<<< 前へ TOP 次へ>>>
ダイアログ定義セクション
#DLGで始まるセクションです。
サブルーチンや関数、キーアサインで使用する、ユーザー定義ダイアログを記述します。
ダイアログは16384個まで定義可能です。それ以上定義した場合、コンパイルエラーになります。
定義の仕方
定義の仕方は以下の通りです。
#DLG ダイアログ名([[VAR] 引数,[...]]) {
ダイアログパーツ記述文;
....
}
ダイアログ名はA-Z,0-9,_で構成される、60文字までの文字列です。ただし、先頭に数字は使用できません。また、以後に述べる判定式やシステム手続きと同じ名前は使用できません。
例)
#DLG TestDlg()
{
Dialog {
size : 100,100,200,150;
font : 'Terminal',10;
caption : 'Button Test';
};
Button {
size : 3,3,20,10;
caption : '&Yes';
value : 1;
};
}
#DLG WorkDlg(var $data)
{
Dialog {
size : 50,50,150,80;
font : 'Terminal',10;
caption : 'Edit Test';
};
Edit {
result: $data;
size : 10,10,130,15;
limit : 255;
mask : '';
Default : 'default string';
};
Button {
size : 65,50,20,10;
caption : '&Done';
value : 1;
};
};
ver 3.06以降、サブルーチンやユーザー定義関数と同様にFORWARDキーワードを使用することができます。
例)
#DLG TestDlg(); FORWARD;
#KEY A
{
...
TestDlg();
...
}
#DLG TestDlg()
{
...
}
使い方
ここで定義したダイアログはサブルーチンやキーアサイン定義内で使用できます。
例)
#DLG SelectCD(var #no)
{
Dialog {
};
RadioButton {
};
Button {
};
Button {
};
};
#SUB RadioTest()
{
var #no,$work;
SelectCD(#no);
IF (#_RESULT==-1) { ExitProc(); }; // Dialogがキャンセルされた
IntToStr($work,#no);
ShowMessage('You Choice No.'+$work,'test',0);
};
ダイアログパーツ記述文
#DLGセクションでは、以下の「ダイアログパーツ記述文」のみ使用できます。
注意
「ダイアログパーツ記述文」で使用する数字は32bitで表せる範囲内の数字である必要が有ります。
Dialog
Dialog {
size : 数字1,数字2,数字3,数字4;
clientsize : 数字1,数字2,数字3,数字4;
font : 文字列1,数字1;
caption : 文字列;
}
ダイアログ本体の設定をします。
- size
- ダイアログの大きさを指定します。数字1・数字2はSASFを基準にした、左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- clientsize
- ダイアログの大きさを指定します。数字1・数字2はSASFを基準にした、左上の座標です。数字3・数字4はダイアログのクライアント領域の幅・高さになります。
- font
- 使用するフォントを指定します。文字列1でフォント名を、数字1で大きさを指定します。
- caption
- ダイアログのタイトルです。
Edit
Edit {
result : 文字列変数;
size : 数字1,数字2,数字3,数字4;
limit : 数字;
mask : 文字列;
default : 文字列;
ret : 数字;
filenamecomp : 数字;
curpos : 数字;
sellength : 数字;
autosel : 数字;
focus;
}
(1行)エディタの設定です。result 以外の項目は省略可能です。
- result
- エディタに入力した文字列が格納される文字列変数を指定します。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- limit
- 入力できる最大の文字数を指定します。デフォルトは制限なし(0を設定)です。
- mask
- 入力文字をマスクするときに指定してください。1文字のみ使用可能です。
- default
- デフォルトで表示する文字列を指定します。
- ret
- Edit上でリターンキーを押したとき、確定させるかどうかを指定します。-1を設定した場合、リターンキーを押してもダイアログは閉じません。-1以外の場合、#_RESULTに指定した値を格納してダイアログは閉じます。
- filenamecomp
- 特定のキーを押すことで、ファイル名補完を行うことを指定します。特定のキーはSetFilenameCompleteKey手続きで設定することができます。
数字は補完対象となるファイルの種類を指定します。
bit 0 | ファイル |
bit 1 | フォルダ |
bit 2 | 共有名 |
bit 3 | サーバー名 |
- curpos
- 初期のカーソル位置を指定します。文字列の先頭が0になります。sellengthを指定すると、実際のカーソルの位置はcurpos+sellengthになります。
- sellength
- 初期の選択状態を指定します。curposからsellengthで指定した部分を選択状態にします。
- autosel
- Editがフォーカスを持ったときに全選択状態にするかどうかを指定します。デフォルトでは全選択状態になります。
0を指定するとこの機能は無効になります。0以外は有効になります。
curposやsellengthを使用するときは0を指定しておいてください。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
ComboBox
ComboBox {
result : 文字列変数;
size : 数字1,数字2,数字3,数字4;
limit : 数字;
type : 数字;
default : 文字列;
history : 文字列;
ret : 数字;
autocomp : 数字;
filenamecomp : 数字;
focus;
}
コンボボックスの設定です。result 以外の項目は省略可能です。
- result
- コンボボックスに入力した文字列が格納される文字列変数を指定します。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- limit
- 入力できる最大の文字数を指定します。デフォルトは制限なし(0を設定)です。
- type
- リスト形式にするかどうかを指定します。1を指定するとリスト形式になり、エディットすることができなくなります。デフォルトでは通常の形式です。
- default
- デフォルトで表示する文字列を指定します。
- history
- ドロップダウンリストに登録するヒストリを指定します。登録する項目は改行(\0d+\0a)で区切っておいてください。
- ret
- Edit上でリターンキーを押したとき、確定させるかどうかを指定します。-1を設定した場合、リターンキーを押してもダイアログは閉じません。-1以外の場合、#_RESULTに指定した値を格納してダイアログは閉じます。
- autocomp
- オートコンプリートを有効にするかどうかを指定します。
0を指定すると無効、0以外で有効になります。
デフォルトでは有効です。
- filenamecomp
- 特定のキーを押すことで、ファイル名補完を行うことを指定します。特定のキーはSetFilenameCompleteKey手続きで設定することができます。
数字は補完対象となるファイルの種類を指定します。
bit 0 | ファイル |
bit 1 | フォルダ |
bit 2 | 共有名 |
bit 3 | サーバー名 |
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
Button
Button {
size : 数字1,数字2,数字3,数字4;
caption : 文字列;
value : 数字;
focus;
elevation;
}
ボタンの設定です。result 以外の項目は省略可能です。
!!!注意!!!
ボタンは押されると必ずダイアログが閉じます。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- caption
- ボタンに表示される文字です。
- Value
- 押されたときに#_RESULTに設定される数字を指定します。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
- elevation
- ボタンにシールドアイコンを表示させます。尚、この項目が有効なのはVISTA以降です。
RadioButton
RadioButton {
result : 変数;
size : 数字1,数字2,数字3,数字4;
caption : 文字列;
column : 数字;
items : 文字列;
default : 数字;
focus;
}
ラジオボタンの設定です。result 以外の項目は省略可能です。
- result
- 何番目がチェックされているかを格納する変数を指定します。最初の項目は0になります。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- caption
- はラジオボタンのタイトルを指定します。
- column
- 列数の指定です。デフォルトは1列です。
- items
- 項目を指定します。各項目は改行(\0d+\0a)で区切って指定してください。
- default
- 最初に選択されている項目の番号を指定します。最初の項目の番号は0になります。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
CheckBox
CheckBox {
result : 変数;
size : 数字1,数字2,数字3,数字4;
caption : 文字列;
default : 数字;
focus;
}
チェックボックスを設定します。result 以外の項目は省略可能です。
- result
- 何番目がチェックされているかを格納する変数を指定します。最初の項目は0になります。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- caption
- チェックボックスのテキストを指定します。
- default
- チェックの状態を指定します。1ならばチェックされている、1以外はチェックされていない状態になります。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
Memo
Memo {
result : 文字列変数;
size : 数字1,数字2,数字3,数字4;
default : 文字列;
readonly : 数字;
focus;
}
メモを設定します。result 以外の項目は省略可能です。
- result
- 入力されたテキストを格納する文字列変数を指定します。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- default
- 最初に表示されるテキストを指定します。
- readonly
- 内容の変更を許可するかどうかを指定します。1を指定すると変更されないようにします。その他は変更を許します。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
Label
Label {
size : 数字1,数字2,数字3,数字4;
caption : 文字列;
color : 数字;
align : 数字;
}
ラベルを設定します。全て省略可能です。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- caption
- テキストを指定します。
- color
- 色を指定します。0x00RRGGBBの形で指定してください。デフォルトは黒です。
- align
- 文字のアジャストを指定します。
Bevel
Bevel {
size : 数字1,数字2,数字3,数字4;
type : 数字;
}
枠を設定します。全て省略可能です。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- type
- 形状を指定します。
1 | 箱型・盛り上がっている |
2 | 枠線・引っ込んでいる |
3 | 枠線・盛り上がっている |
その他 | 箱型・引っ込んでいる(default) |
ListBox
ListBox {
result : 文字列変数;
size : 数字1,数字2,数字3,数字4;
column : 数字;
items : 文字列;
multi : 数字;
ret : 数字;
focus;
onekey : 数字
}
リストボックスを設定します。result以外は省略可能です。
- result
- 選択された項目を「文字列」の形で格納する、文字列変数を指定します。multi selectを指定した場合、改行で区切られた形で選択された番号が格納されます。先頭の項目の番号は0になります。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- column
- 列数を指定します。
- items
- 項目を指定します。各項目は改行(\0d+\0a)で区切ってください。
- multi
- 複数選択を可能にするかどうかを指定します。1を設定すると複数選択可能になります。1以外は不可になります。デフォルトは不可です。
- ret
- リターンを押したときに確定させるかどうかを指定します。
-1を設定すると、確定しません。-1以外を設定すると、リターンを押すと確定します。そのときret に設定した値が#_RESULTに格納されます。
- focus
- ダイアログが開いたとき、最初にフォーカスの当たっている状態にしたいときに指定します。
- onekey
- リストボックスの先頭の文字を押したとき、該当するリストが一つしかない場合はその項目を選択して確定させます。複数該当するものがある場合は確定させません。確定した場合、#_RESULTに指定した数字が入ります。このとき、数字に-1を指定するとキャンセル扱いになるので注意してください。
GroupBox
GroupBox {
size : 数字1,数字2,数字3,数字4;
caption : 文字列;
Dialog以外のダイアログパーツ;
}
グループボックスを設定します。全て省略可能です。
- size
- 大きさを指定します。数字1・数字2はダイアログを基準した左上の座標です。数字3・数字4はダイアログの幅・高さになります。
- caption
- グループボックスのタイトルを指定します。
- ダイアログパーツ
- Dialog以外全てが使用できます。GroupBox内で指定したパーツのsizeの、左上の座標の原点はこのGroupBox左上になります。
<<< 前へ TOP 次へ>>>