2011/05/24

access2010 Webデータベース その52 確認用ダイアログフォーム -1-

** Office365beta(プランP1) 環境 **  
MsgBox関数の体でダイアログフォームを表示させてみる。
Web環境でメッセージボックスマクロアクションを使用するとこうなる。
IEだとこんな感じ
メッセージのみ指定可能
Webフォーム上ではMsgBox関数は使用できないから、一時変数/TempVarを用いてユーザ選択を取得するダイアログフォームを準備してみる。


フォームを開く前に、一時変数/TempVarを設定しておく。
変数名をいちいち調べなくてもよいようにフォーム名+数値にしておいた。DialogOK0はフォームのキャプションで1~3はメッセージ部分。
フォーム読み込み時にフォーム上ラベルコントロールのキャプションをプロパティの設定マクロアクションで行う。プロパティの設定でコントロールを指定しなかった場合、フォームのキャプションになった。
ウインドウを閉じるときに一時変数のお片付けをして完了としたいけど、
フォームの閉じるボタンを制御するプロパティがないので、お片付けが必ず実行されるということにはならない。なので、ダイアログフォームの呼び出し元でお片づけをしておこうか。
使ったらすべて初期化していくか、使うとき必ずすべて設定するかどっちかに決める。
ちょっと違った。フォーム読み込み時に削除しておけばよかった。

 OKかCancelを選ばせるとする。
フォームと同名の一時変数を設定していて、これを使ってユーザ操作を参照する。ここでCancelとしているのは、閉じるボタンでフォームを閉じたときを考慮した。OKボタン/Cancelボタンのいずれかも押さずフォームが閉じられたときCancelとみなす為。
 OKボタン押下時、OKを代入し閉じる。
Cancelボタン押下時は何もせず閉じる。フォーム読み込み時にCancelをセットしているからこれでいい。
フォームを開くマクロアクションの次のメッセージボックスマクロアクションでユーザの選択した結果が表示される算段。

もうひとつのパターンでYes/No/Cancelを用意しておく。





続く

0 件のコメント: