- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ボタンクリックでタブ内のピクチャコントロールに画像描画)
ボタンクリックでタブ内のピクチャコントロールに画像描画
このQ&Aのポイント
- Aのボタン1を押すと、Bが呼び出されます。Bのコンボボックスで画像を選択し、ボタン2を押すと、タブ内のピクチャボックスに選択した画像が表示されます。
- ダイアログ間での画像表示について悩んでいます。Aのボタン1を押すと、Bのダイアログが呼び出されます。Bのコンボボックスで画像を選択し、ボタン2を押すと、タブ内のピクチャボックスに選択した画像が表示される仕組みを実現したいです。
- ダイアログAのボタン1を押すと、ダイアログBが表示されます。ダイアログBのコンボボックスで画像を選択し、ボタン2を押すと、タブ内のピクチャボックスに選択した画像が表示されるようにしたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Aダイアログの初期化処理(Aダイアログのオープン時ではなく、生成時に初期化する) ・選択された画像名を記憶しておくグローバル変数を「空文字列」に初期化する Aダイアログのボタン1の処理 ・Bダイアログを生成する ・Bのダイアログをモーダル付きで開く(Bが閉じられるまで、Aに処理が戻らない) ・Bが閉じられるとAに処理が戻るので、返されたモーダルリゾルトを調べ、押されたのがOKかCANCELか判定する ・押されたのがCANCELなら何もしない ・押されたのがOKなら、Bダイアログのコンボボックスで何が選択されていたか取得する ・コンボボックスで何も選ばれていないなら、何もしない ・コンボボックスで選ばれた画像名を、グローバル変数にコピーして格納する ・Bダイアログを破棄する Aダイアログのボタン2の処理 ・グローバル変数に格納されていた画像名が「空文字列」の場合は何もしない ・空文字でなければ、グローバル変数に格納されていた画像名でピクチャボックスに画像を表示する BダイアログのOK、CANCELボタンの処理 ・OKボタンは、モーダルリゾルトに「OK」を意味する値を設定してBダイアログを閉じる ・CANCELボタンは、モーダルリゾルトに「CANCEL」を意味する値を設定してBダイアログを閉じる