ダイアログボックスはダイアログテンプレート文によってその外観と動作を規定します。次のダイアログボックスはログオンIDを入力するための1つのエディットフィールドと1つのボタンを持ちます。このダイアログボックスがどのように定義されるのかを見てみます。
ダイアログテンプレートはダイアログボックスの定義、アイテムの定義およびメッセージマップから構成されます。
まず、DLGTEMPLATEを宣言してダイアログボックスの名前を定義します。例では"logon"という名前を定義しています。このテンプレート名はダイアログボックスを開始する関数Dialogでダイアログテンプレートを識別するために使われます。それぞれ違った名前を使用して複数のダイアログテンプレートを定義することができます。
DLGTEMPLATE(logon)
ダイアログテンプレートで最初に行うことはダイアログボックスの外観を定義することです。この例ではTITLE文でタイトルバーに表示される文字列を設定し、SIZE文とXY文で大きさと位置を設定しています。位置を指定しない場合はデフォルト処理として画面の中央にセンタリングされます。
TITLE("ログオンIDを入力して下さい")
SIZE(45,11)
ダイアログボックス内の各アイテムはITEM文で定義します。このITEM文はアイテムの個数分だけ複数定義します。ITEM文でアイテムにテンプレート中で重ならない名前を付けます。
ITEM文の中でスタイル、位置、大きさを定義します。
ITEM(id) | ;アイテム名 | |
STYLE(EDIT TABSTOP) | ;エディットフィールド、タブ有効 | |
XY(7,5) | ;位置 | |
SIZE(18,1) | ;大きさ | |
ENDITEM |
最後にメッセージマップを記述します。メッセージマップの記述はフィルタするメッセージ名にOnをつけて表します。どのアイテムから生成されたメッセージかを識別したいときは引数にアイテム名を指定します。
OnInit: OnClick(ok): | ;初期化メッセージ ;ボタンクリックメッセージ |