| アックンさん、こんばんは。
Oiller です。
>>「フォームヘッダ部」はウィザードが追加したオブジェクトなのでしょうか、 > そうですよ。 メソッドについて、いくらか分かってきたのでフォームに含まれるオブジェクトをリストアップするイベントプログラムを書いてみました。
これで、empty.wfm,real.wfmのフォームオブジェクトに含まれるオブジェクトを比較すれば、「フォームヘッダ部」が含まれているが隠されていて見えないのか、元々含まれていないので表示されていないのか区別できます。 「フォーム定義画面」の[表示]-[ヘッダ]の項目チェックをONにしたりOFFにすることで本当にオブジェクトを追加したり削除したりしていることも確認できます。
作成した、FormContents.kevの中身です。 -------------------------------------------------------------------------- 名札 メイン 変数宣言 局所,数値{&n,&i,&wh} 変数宣言 局所,文字列{&s,&name} *
手続き定義開始 フォーム::マウス左アップ(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ) ウィンドウリスト取得 &wh &s="" メソッド呼び出し ハンドル = &wh,戻り値 =&実行リターン,@フォーム.オブジェクト数( &n ) 繰り返し &i=0, &n-1 メソッド呼び出し ハンドル = &wh,戻り値 =&実行リターン,@フォーム.オブジェクト取得( &i,&name ) &s=&s+#str(&i)+":"+&name+"\n" 繰り返し終了 メッセージボックス "フォームの子オブジェクト一覧" , &s , アイコン=!, ボタン指定=1, 制御文字展開=する, &実行リターン 手続き定義終了 --------------------------------------------------------------------------- 実際に動くサンプルを添付しました。 フォームの左ボタンアップイベントを使ってしまったためにクリックする場所によっては他の動作をしてしまいますが、オブジェクトの無さそうなところで左クリックするとオブジェクトのリストが書かれたメッセージボックスが表示されます。
|