Current form name
Current form name : Text
引数 | 型 | 説明 | |
---|---|---|---|
戻り値 | Text | ← | プロセス中のカレントのプロジェクトフォーム名またはカレントのテーブルフォーム名 |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
Current form nameコマンドは、プロセスのために定義されたカレントのフォームの名前を返します。カレントフォームはプロジェクトフォームでもテーブルフォームでも可能です。
FORM LOAD コマンドをカレントプロセス中に使用していなければ、デフォルトでのカレントフォームは表示または印刷されているフォームです。FORM LOAD コマンドをカレントプロセス中に呼び出していた場合、カレントフォームはこのコマンドによって設定されたフォームとなり、FORM UNLOAD (または CLOSE PRINTING JOB)コマンドを呼ぶまでそれが維持されます。
コマンドは、以下のいづれかを返します:
- フォーム名
- カレントフォームが.json ファイルから作成されていた場合にはそのファイル名(拡張子を除く)
- カレントフォームがオブジェクトから作成されていた場合には"name" 属性
- プロセスにおいて定義されたカレントフォームがない場合には、空の文字列
例題 1
入力フォームにおいて、以下のコードをボタンに実装します。
var $FormName : Text
$win:=Open form window([Members];"Input";Plain form window)
DIALOG([Members];"Input")
$FormName:=Current form name
// $FormName = "Input"
FORM LOAD([Members];"Drag")
$FormName:=Current form name
// $FormName = "Drag"
//...
例題 2
カレントフォームがプロジェクトフォームであればその名前を取得したいという場合を考えます。
$PointerTable:=Current form table
If(Nil($PointerTable)) // これがプロジェクトフォームであれば
$FormName:=Current form name
... // 処理
End if