過去の桐井戸端BBS (桐ver.7)
444 表のウィンドウサイズを一括から調整したい うさこ 1998/10/16-20:11
桐Ver7で、一括から表を表示するときに、列幅や文字色は表示条件として保存して「表示条件読み込み」コマンドで読み込めば設定できるのですが、ウィンドウのサイズ(高さとか幅とか)は保存されないようです。
表のウィンドウサイズは一括から設定できないのでしょうか?
446 Re: 悲しげ 1998/10/16-22:32
記事番号444へのコメント
どもっ、うさこさん。

これも試したことがあります。
ウィンドウズ会話で表を開いて、次の行に確か

 ウィンドウ位置 最大化

だったか(あいまいな記憶ですいません)と書けば、最大化だけはできました。
でも、ひどくおそいです。画面がアニメーションして広がりますから。(^^;)

任意の大きさにするのは、これは難問です。
たぶん「オブジェクト操作」コマンドを使うのだろうと思います。
このコマンドで、始点X、始点Y(ここのXYは必ず半角!)、幅、高さ、を変更できる筈だからです。
「筈」と書いたのは、なかなか期待する位置や大きさになってくれないからです。
私の使い方が間違っているのか、はたまたv7の不具合なのか、もしよろしければ、うさこさんの方でも色々お試しになって、ご報告いただければ幸いです。
452 Re: うさこ 1998/10/19-18:07
記事番号446へのコメント

>任意の大きさにするのは、これは難問です。
>たぶん「オブジェクト操作」コマンドを使うのだろうと思います。
>このコマンドで、始点X、始点Y(ここのXYは必ず半角!)、幅、高さ、を変更で
>きる筈だからです。「筈」と書いたのは、なかなか期待する位置や大きさになっ
>てくれないからです。

なるほど。このコマンドは初めて知りました。(なにせ桐に携わるようになって、まだ3週目ですので....)
マニュアルによると、このコマンドへのパラメータは
・属性値を取得するフォームウィンドウのハンドル番号
・オブジェクト名
が必要みたいですね。
っていうことは、「フォーム」の上で定義されている、テキストエリアとかボタンとかの部品(?)でないとだめっていうことなんでしょうか?
ウィンドウで表示したときのテーブルは、フォームとしてのウィンドウハンドル番号をもっているんでしょうかねぇ??
うーむ。難しいなぁ…。

>私の使い方が間違っているのか、はたまたv7の不具合なのか、もしよろしけ
>れば、うさこさんの方でも色々お試しになって、ご報告いただければ幸いです。

がんばってみます。;_;
453 Re: わたなべ 1998/10/19-23:58
記事番号452へのコメント
そうそう、私も同じような疑問をもっておりました。
一括処理から表のウインドウサイズってどうやったら変更できるんでしょうね。
一括処理を実行して表を開くと、いつも同じ小さなサイズの表になってしまって不便なんですよね。
いざ、表形式編集に移るとなると、自分で最大化のボタンをわざわざ押しに行ってます。
これって、非常に面倒ですね。
455 Re: 悲しげ 1998/10/20-01:18
記事番号452へのコメント
どもっ、
あっ、「表のウィンドウサイズを一括から調整」でしたね。
「オブジェクト操作」コマンドはフォームの場合でした。(^^;)

表はどうするかは詳しくは判りません。
ただ、今までの試みで判ったことは、

 表形式編集 ……

ではできないと云うことです。ウィンドウハンドルとやらが(多分自動的に付いているんでしょうけど)不明なためです。
そのために「表形式編集」は使わないで、かわりに

 ウィンドウ作成 表,……

として、ハンドル番号を取得する必要があるようです。
そして続けて、

 ウィンドウ位置 …,最大化
 ウィンドウ会話 ……

とやると、遅いですが、先ずは小さく開いてから最大化された状態で、表形式編集と同じ操作が可能となるようです。
あと、注意しなければならない点は、この処理が終わった後に必ず、

 ウィンドウ終了 ハンドル

と記述しておかないと、他のウィンドウに影響を及ぼすことがあるようです。

いやはや、何ともめんどうですね。(;_;)
456 Re: うさこ 1998/10/20-15:50
記事番号455へのコメント
こんにちは。悲しげさん、いつもありがとうございます。

>どもっ、
>あっ、「表のウィンドウサイズを一括から調整」でしたね。
>「オブジェクト操作」コマンドはフォームの場合でした。(^^;)

うーむ。そうなんですよ。

>表はどうするかは詳しくは判りません。
>ただ、今までの試みで判ったことは、
> 表形式編集 ……
>ではできないと云うことです。ウィンドウハンドルとやらが(多分自動的に付い
>ているんでしょうけど)不明なためです。

ですよねぇ。なんかそういう、桐自体はもってるはずなのに、公開されていないインターフェースが多すぎますよね。

>そのために「表形式編集」は使わないで、かわりに
>
> ウィンドウ作成 表,……
>
>として、ハンドル番号を取得する必要があるようです。
>そして続けて、
>
> ウィンドウ位置 …,最大化
> ウィンドウ会話 ……
>
>とやると、遅いですが、先ずは小さく開いてから最大化された状態で、表形式
>編集と同じ操作が可能となるようです。
>あと、注意しなければならない点は、この処理が終わった後に必ず、
>
> ウィンドウ終了 ハンドル
>
>と記述しておかないと、他のウィンドウに影響を及ぼすことがあるようです。

最大化はそうすればいいんですか。
でもわたしがしたいのは、余白部分がでない、ちょうどいい大きさなんですよねぇ。
やっぱり今は無理なのかなぁ。
ACCESSとかだと、テーブルも調整した大きさで保存されて、勝手に毎回デフォルトの
大きさにされたりとかはしないんですけどね。

>いやはや、何ともめんどうですね。(;_;)

ほんとに。(;_;)
459 Re: 正直 1998/10/20-21:43
記事番号456へのコメント

私は、パソコンの電源起動から必要な 表をウィンドウの最大で表示するまで自働で行いたいのですが やはり出来ません表のウィンドウが、最小で困っております
うさこさん、悲しげさん教えて下さい
ver7の一括をやったのは、今朝が最初です。
ver5は、多少行いました

宜しくお願い致します
461 Re: 悲しげ 1998/10/20-23:39
記事番号459へのコメント
どもっ、正直さん

え〜、一括処理で「最大化」する方法は先に書いたこと以上のことは私にはわかりません。

>表のウィンドウが、最小で困っております

「最小化」ってのは、試したことはありませんが、画面の最終行に小さなボックスになることなのではないでしょうか?(未確認ですが)
しょうじきさんのおっしゃる「最小」とは、デフォルトで開く中ぐらい(小さめ?)の状態のことですよね?

v7.1がどの程度改良されているかは不明ですが、気持ちとしては、v8に期待するしかないかな、に傾いています。
残念無念。
462 Re: 正直 1998/10/21-05:48
記事番号461へのコメント
悲しげさんへ

   7.1がどの程度改良されているかは不明ですが、気持ちとしては、
   8に期待するしかないかな、に傾いています。残念無念。

早々の返事ありがとう御座います
再度悲しげさんの例に沿って やってみます
私は、駆け出しのものですので宜しくご指導下さい
463 Re: アックン 1998/10/21-17:26
記事番号446へのコメント
悲しげさん、みなさん> こんばんは。こんな感じでどうでしょう。
久しぶりに掲示板を読んで、これまた久しぶりに一括動かしてみました。(^^;

***------ (C)アックン 1998.10.21 -----------------------------------
*注意! 一括ウィンドウを最大化してからデバッグを開始してはいけまっしぇん。

var 整数{&hWnd,&横位置,&縦位置,&幅,&高さ,&End}

** まずはカレントウィンドウの位置とサイズを新規作成ウィンドウの規定値にする。
手続き実行 K3生成
表作成 "01",定="01.K3",表番号=1
ウィンドウ作成 表,位置=(10,10),サイズ=(300,200),\
ハンドル=&hWnd,カーソル位置=先頭
*ウィンドウ作成 表,h=&hWnd /* 最大化したいときは、上記1行を注釈行にして
*ウィンドウ位置 最大化,1 /* この2行を生かす。
表示位置 同期
手続き実行 A("このウィンドウを規定値に設定しました。")
中止 表

表作成 "02",定="01.K3",表番号=1
ウィンドウ作成 表,h=&hWnd
手続き実行 A("新規作成ウィンドウは\n規定値になります。")

ウィンドウ位置 設定,&hWnd,\
位置=(&横位置+100,&縦位置+100),サイズ=(&幅+100,&高さ+100)
手続き実行 A("位置を 100 プラスし、サイズも 100 プラスしました。")

ウィンドウ位置 最小化,1
手続き実行 A("最小化しました。")

ウィンドウ位置 復元,1
手続き実行 A("最小化する直前の状態に戻しました。")

中止 表
終了

名札 K3生成
 印字開始 "02.K3"
 印字 """A"",""文字列"",8,"左寄せ"",,""基本"",,,,,,""しない"",""許可"""
 印字 """B"",""文字列"",8,"左寄せ"",,""基本"",,,,,,""しない"",""許可"""
 印字 """C"",""文字列"",8,"左寄せ"",,""基本"",,,,,,""しない"",""許可"""
 印字終了 改頁=しない
手続き終了

手続き定義開始 A(文字列 &STR1)
  ウィンドウ位置 取得,&hWnd,位置=(&横位置,&縦位置),サイズ=(&幅, &高さ)
  メッセージボックス "ウィンドウの位置とサイズ",\
&STR1+"\n\n"+"位置=("+#STR(&横位置)+","+#STR(&縦位置)+"),\
サイズ=("+#STR(&幅)+","+#STR(&高さ)+")",\
アイコン=!,ボタン指定= 1,&End
手続き定義終了
***-------------------------------------------------------------------
465 Re: 悲しげ 1998/10/21-23:19
記事番号463へのコメント
どもっ、アックン、こちらでもこんばんわぁ。

実は私も今日はじめて

  ウィンドウ作成 表,位置=(*,*),サイズ=(*,*)

ってのを試してみまして、それを書こうと思っていたところでした。(^^;)
でも、このように汎用的に書いていただくと、色々応用が効きそうです。
さっそくφ(.. )メモメモしました。どうもありがとう。(^^)v

余談ながら、今日は伝票フォームから表形式に降りた時の整列状態の挙動がおかしい点にハマッテいました。
「ウィンドウズ作成」やら「サイズ」を指定すると、並べ替えをかましても有効にならないんですね。
もう少し試してみますが。
467 Re:V7/伝票フォームから表形式に降りたとき アックン 1998/10/22-11:27
記事番号465へのコメント
悲しげさん、どもども。

>実は私も今日はじめて
私も昨日がはじめてでした。<(^^;

「手続き定義〜」を使ってみました。これ便利です。
変数値指定と手続きに飛ばすコマンドが1行で済んでるでしょ。
DOS桐はこれが出来なくて、いつもいらいらしていたんだじょー。

>余談ながら、今日は伝票フォームから表形式に降りた時の整列状態
>の挙動がおかしい点にハマッテいました。

「由紀子本」の41ページ前後に詳しく解説されています。
復習のつもりで30ページから読むといいよん。
468 Re:V7/伝票フォームから表形式に降りたとき 悲しげ 1998/10/22-21:31
記事番号467へのコメント
どもっ、アックン

ちょっと言葉たらずでしたが、「由紀子本」の該当ページの記述は承知していました。
つまり、伝票フォームから表形式に降りた時、整列状態は解除されてしまっているので、ならば、一括処理にて自動的に目的とする整列状態にしてから表形式編集に臨もうとしたこと、これが私がハマッタ点であります。

余談ながら、フォームの「ウィンドウズ会話」からは[Home]キーは効きません。
「フォーム形式編集」なら[Home]キーで表形式に降りることができます。
私の場合は、これに似せて「機能キー入力」コマンドを使って、[Home]キーを押せば表形式編集に降りることができるようにしてみました。(^^;)

それはさておき、伝票フォームから表形式に降りた時に、整列を生かすためには、まず「グループ選択解除」コマンドを実行させ、しかる後に「並べ替え」コマンドなり「検索」コマンドを使わなければなりません。
このことまでは比較的簡単にわかりました。
悩んだのは次の点です。
表形式に降りた時の表示サイズを大きくしたいために、
  ウィンドウ作成 …,位置=…,サイズ=…
または
  ウィンドウ位置 …,最大化
などとやったら、次に行う「ウィンドウ会話」でも「表形式編集」でも、いかようにしても整列が有効になりません。
ウィンドウの大きさをいじらないで、単に「表形式編集」だけとする場合に限り、整列状態が有効となるようです。
これは不思議です。

ついでに記述を具体的に書くと、

 ケース(&キー=5) */[Home]キー
   &なんとか=[なんとか]
   ウィンドウ終了 n
   グループ選択解除
  *ウィンドウ作成 表,……(位置とかサイズとか)
  *(または)ウィンドウ位置 最大化,m
   並べ替え 索引名="なんとか"
   検索 [なんとか]=&なんとか
  *ウィンドウ会話 m,……
  *ウィンドウ終了 m
   表形式編集 ……
   ウィンドウ作成 フォーム,ハンドル=n 

*の記述がひとつ以上あると必ず整列が無効になってしまうという……
私はこれで半日つぶしました。白く燃えつきてしまわないで、ひどくくすぶっていますです。(;_;)
472 Re:表のウィンドウサイズを一括から調整 正直 1998/10/23-21:45
記事番号455へのコメント

悲しげさん おかげで 表の最大化が出来ましたので
お礼を申し上げます

私の処理です

  表 "ABC.tbl",モード=専有
  ウィンドウ作成 表,位置=(0,0),サイズ=(300,200),カーソル位置=先頭
  表示位置 同期
  ウィンドウ位置 最大化,1
  会話処理実行

また宜しくお願いします
476 Re:V7/伝票フォームから表形式に降りたとき アックン 1998/10/27-11:57
記事番号468へのコメント
悲しげさん>
例示された現象については、まだ確認していません。昼飯食った後でやってみます。
V7はフォームをグループ化する索引があれば、表形式編集画面に切り替えても並び順が崩れないので、その索引を作る方が近道のような気もするんですが。
索引を作ってない理由は、グループ化項目の多さとタブオーダー順の絡みがネックだとは思いますが、そこんところをなんとかできません(?)。
478 Re: 悲しげ 1998/10/28-10:41
記事番号476へのコメント
どもどもっ、アックンさま、わざわざコメントをありがとさんです。

>V7はフォームをグループ化する索引があれば、表形式編集画面に切り替えても並び
>順が崩れないので、その索引を作る方が近道のような気もするんですが。
>索引を作ってない理由は、グループ化項目の多さとタブオーダー順の絡みがネックだ
>とは思いますが、そこんところをなんとかできません(?)。

索引は当然ながらあるんです。グループ項目とタブオーダ順もあっているはずです(多分)。

で、切り口はどうあれ、要するに一括処理で伝票フォームから表形式に降りた際に、
1)整列状態であること、
2)できれば最大化(またはそれなりに大きいサイズ)であってほしい、
3)ついでに初期項目も指定できればいい、
が実現できればいい程度のもんです。これがうまく行かないんですよ。

ちなみに、3)の初期項目指定は、V7のバグで「ウィンドウ会話 表」コマ ンド以外ではできません(次版で直すとのこと)。
もひとつちなみに、フォームから「ウィンドウ会話」コマンドだと表形式編集に降りることができません。
「フォーム形式編集」コマンドなら降りることができます。
が、「フォーム形式編集」から[Home]キーで表形式に降りて(この時は整列状態は保持されています、サイズが小さいだけで)、そこで最大化した後、(再度[Home]キーでフォームに戻ることなく)直接[/]+[Q]で会話処理を終了すると、画面最下部に赤いエラーメッセージが出ます。
多分、(自動的に作成された)表ウィンドウの(ハンドルの未把握のため?)開閉がうまく行っていないからと想像していますが、ともあれ、[Home]キーを押し忘れて[/]+[Q]してしまう可能性が(特に私以外の人が操作する際には)高いことから、これも使えません。
479 Re: アックン 1998/10/28-17:47
記事番号478へのコメント
悲しげさん、こんばんは。
いろいろ試してみたところ、次のやつが最も確実でした。

 表 "なんとか",索="索引01",使="なんとか"
 フォーム形式編集
 終了

あ、こんだけ(↑)です。(^^;

えー、動作条件なり制限がありまする。
1)会話形式に降りたままでフォームと表編集を行き来する。
2)フォームのサイズをあらかじめデフォルトで最大化に定義しておく。(※1)

動きは次のようになりました。
・フォーム(最大化)→表編集(最大化)→フォーム(最大化)
・フォーム(最大化)→表編集(最大化)→(サイズ変更すると)→フォーム(最大化)
・フォーム(最大化)→(サイズ変更すると)→表編集(そのサイズになる)→フォーム(最大化)

 うーみゅみゅ。よーわからん・(笑)。

前々回ぼくが書いた一括のようにいちいちウィンドウサイズを変更しない分だけ動作も高速だし、目障りでないのはいいんですけどね。
他の方法はなかなか思い通りになってくれません。
フォームを最大化したくないが表は最大化したい、というニーズだとキビチイかも。(^^;

・フォーム形式編集コマンド
 整列は保持されるが、最大化して/Qするとエラーメッセージ(ステータス行に赤文字)が出るという症状は、こちらでは確認できませんでした。

初期項目を指定できないバグも確認しました。
他のコマンドで項目を指定できるかな(?)。(^^;

・ウィンドウ会話コマンド
 表形式編集画面に切り替え出来ないという症状を確認しました。
なんとまあ、フォームバーの切替ボタンも消えてしまうんですね。
そこで機能キーの代わりに、ぼくはメッセージボックスを使いました。

※1 フォームを最大化する方法:
 フォーム定義画面 →周りの白いワークスペースをクリック→オブジェクトの属性(CTRL+Enter)
  (たしかこの段階でもポップアップすると思うんですが・・。)
 →フォームオブジェクトのフォーム(タブ) →サイズ自動調整→最大化

(追記1) 索引を設定していれば、表編集とフォームを行き来しても整列は崩れません。

(追記2) そちらでも確認していただきたいのですが、
    デバッグ開始時に一括ウィンドウが最大化されていると、フォームのウィンド
    ウサイズがヘンになります。
    ですから、ぼくがデバッグするときは一括ウィンドウを少し小さめにしてからにしてます。
    この仕様はなんなんだ(!)。(--;

ツリーがまだ伸びるとここに迷惑かけそうだし、続きはFAPPLIでやりましょうか。
480 Re: 悲しげ 1998/10/28-21:11
記事番号479へのコメント
どもっ、アックンさま、
了解しました。ひとまず中断しましょう。
ご教示下さった点は、後日色々試してみて忘れたころに報告するってことで。
482 Re:表のウィンドウサイズを一括から調整 アックン 1998/10/29-12:20
記事番号463へのコメント
一括の訂正です。今頃気がつきました。(^^;わはは..

(誤)印字開始 "02.K3"
(正)印字開始 "01.K3"

動かなかった人、ごめんなさい。今度はちゃんと走りますよ。
ただし一括コマンドを書くウィンドウを最大化してから動かさないでください。
ウィンドウサイズがでかくなってしまいます。
これはシステムのバグでしょうね。

      アックン(=^・^=)

戻る