ウィンドウ表示時にパラメータを渡したい

投稿者: 投稿日:2018/07/27(Fri) 14:28:30 No.2152

 こんにちは、お世話になります。

 新しくウィンドウを作成するときにパラメータを渡したいことがあるのですが、何か良い方法はないでしょうか。
 例えば、下記のようにファイルの一覧を表示させ、選択されたファイルの情報を表示させたい時などです。
 一応サンプルを作ってみたんですが、うまくファイル名が渡らないようです。

--------------------
メイン画面を表示する
待機する

メイン画面とは
ウィンドウを継承する

はじめ手順
初期化する
終わり

初期化する手順
この内容を「テストウィンドウ」に変える
ラベル1というラベルを作る
その内容を「ファイル一覧」に変える

リスト1というリストボックスを作る
(マイドキュメントのファイルの一覧)をリスト1へ一括追加する
リスト1の番号を1に変える

プロパティボタンというボタンを作る
その内容を「情報を表示」に変える
終わり

プロパティボタンがクリックされた時の手順
ファイル名は、リスト1の選択一覧(1)
プロパティ画面のファイル名は、ファイル名
プロパティ画面を表示する
自分を閉じる
終わり
終わり

プロパティ画面とは
ウィンドウを継承する
+ファイル名

はじめ手順
初期化する
終わり

初期化する手順
この内容を「ファイル情報」に変える
ファイル名を表示する
(後略)
終わり
終わり
--------------------

 なにかアドバイスをいただけると幸いです。

 よろしくお願いいたします。

Re: ウィンドウ表示時にパラメータを渡したい

投稿者:通りすがり 投稿日:2018/07/30(Mon) 22:00:28 No.2153

「はじめ」の手順は、その種類が使用されるのに先立ち実行されます。
そのユーザ定義種類に対して、参照や設定が初めて行われた際に、自動的に実行されます(のようです)
そのため、
>プロパティ画面のファイル名は、ファイル名
の行を、実行しようとするとき、ファイル名の代入の前に(代入先の初期化がまだのため)、先に「はじめ」の手順が実行されています。
この仕組みを追い抜くことはできないと思いますので、
A)外部変数に設定したうえで、初めて使用することで、「はじめ」の手順で読み込む。
 不用意に参照しただけでも、動作が変わってしまうので、注意が必要。
B)はじめの手順(と、初期化の手順)では、ファイル名の変数は参照せず、専用の初期設定用の手順を作成・定義して、ファイル名の変数を参照が必要な処理を行う(初期化が2段階になる)。
の、いずれかが良いと思います。Aの方は、のちのちまで実装上の制約が付いて回るため、Bがおすすめです。

Re^2: ウィンドウ表示時にパラメータを渡したい

投稿者: 投稿日:2018/08/07(Tue) 22:26:17 No.2155

 こんにちは、お世話になります。

 Bの方法でなんとか実装できました。
 アドバイスありがとうございました。

 それでは。

▲ページの先頭へ

- WebForum -