Open form window
Open form window ( {aTable ;} formName {; type {; hPos {; vPos {; *}}}} ) : Integer
| 引数 | 型 | 説明 | |
|---|---|---|---|
| aTable | Table | → | フォームが属するテーブル、または省略時デフォルトテーブル | 
| formName | Text, Object | → | プロジェクトフォームまたはテーブルフォームのフォーム名(文字列)、 あるいはフォームを定義した.jsonファイルへのPOSIXパス(文字列)、 あるいは開くフォームを定義したオブジェクト | 
| type | Integer | → | ウィンドウタイプ | 
| hPos | Integer | → | ウィンドウの横位置 | 
| vPos | Integer | → | ウィンドウの縦位置 | 
| * | 演算子 | → | ウィンドウの現在の位置とサイズを保存 | 
| 戻り値 | Integer | ← | ウィンドウ参照番号 | 
説明
Open form window コマンドはフォームformNameのサイズとリサイズプロパティを使用して、新しいウィンドウを開きます。
注: フォームのメインプロパティを知るためには、FORM GET PROPERTIES コマンドを使用してください。
formName 引数には、いかのいづれかを渡すことができます:
- 使用するフォーム名(プロジェクトフォームあるいはテーブルフォーム)
- 使用するフォームの詳細を格納している有効な.josn ファイルへのパス(POSIX シンタックス、フォームファイルパス 参照);
- フォームの詳細を格納しているオブジェクト
formNameフォームはウィンドウに表示されません。フォームを表示するには、フォームをロードするコマンド (ADD RECORD 等) を呼び出さなければなりません。
Open window コマンドと異なり、クローズボックスにはメソッドは割り当てられません。クローズボックスをクリックすると、On Close Box フォームイベントが有効にされている場合を除き、ウィンドウがキャンセルされ閉じられます。On Close Box フォームイベントが有効であれば、割り当てられたコードが実行されます。
formNameフォームがリサイズ可能であれば、開かれるウィンドウにはズームボックスとグローボックスが付加されます。
注: フォームの主なプロパティを取得するには FORM GET PROPERTIES コマンドを使用します。
任意のtype引数は、ウィンドウのタイプを指定するために使用します。以下のいずれかの定数を渡さなければなりません ( Open Form Window テーマ内):
| 定数 | 型 | 値 | 
|---|---|---|
| Controller form window | 倍長整数 | 133056 | 
| Form has full screen mode Mac | 倍長整数 | 65536 | 
| Form has no menu bar | 倍長整数 | 2048 | 
| Modal form dialog box | 倍長整数 | 1 | 
| Movable form dialog box | 倍長整数 | 5 | 
| Movable form dialog box no title | 倍長整数 | 524293 | 
| Palette form window | 倍長整数 | 1984 | 
| Plain form window | 倍長整数 | 8 | 
| Plain form window no title | 倍長整数 | 524296 | 
| Pop up form window | 倍長整数 | 32 | 
| Sheet form window | 倍長整数 | 33 | 
| Toolbar form window | 倍長整数 | 35 | 
ウィンドウタイプの詳細な情報については、Window Types の章を参照してください。
注: Form has full screen mode Mac および Form has no menu bar 定数は、他のタイプの定数に加える必要があります。
デフォルトで、type 引数が渡されない場合には、Plain form window タイプのウィンドウが開かれます。
クローズボックス
Movable form dialog box 、Plain form window およびPalette form window タイプのウィンドウにはクローズボックスがあります。ウィンドウのクローズボックスにはメソッドは割り当てられません。クローズボックスをクリックすると、On Close Box フォームイベントが有効化されている場合を除き、ウィンドウがキャンセルされ閉じられます。On Close Box フォームイベントが有効の場合には、割り当てられたコードが実行されます。
サイズコントロール
formName 引数で指定したフォームの"Window Size" プロパティが"fixed" に設定されていない場合、開かれたウィンドウはユーザーによってリサイズ可能です。ウィンドウタイプによって、ズームボックスが利用可能です。Fixed Width あるいは Fixed Heightプロパティがフォームプロパティにおいてチェックされている場合、ウィンドウはリサイズ可能にはなりません。
注: 作成されたウィンドウの一部の属性(グローボックス、クローズボックス等)はtype 引数で選択されたタイプに対するOSのインターフェース仕様によります。そのため、使用するプラットフォームによって異なる結果が得られる場合があります。
オプションの引数 hPos を使用して、ウィンドウの横位置を指定できます。定義済みの位置(ピクセル単位)かOpen Form Window テーマ内の以下の定義済みの定数を渡すことができます:
| 定数 | 型 | 値 | 
|---|---|---|
| Horizontally centered | 倍長整数 | 65536 | 
| On the left | 倍長整数 | 131072 | 
| On the right | 倍長整数 | 196608 | 
オプションの引数 vPos を使用して、ウィンドウの縦位置を指定できます。定義済みの位置(ピクセル単位)かOpen Form Window テーマ内の以下の定義済みの定数を渡すことができます:
| 定数 | 型 | 値 | 
|---|---|---|
| At the bottom | 倍長整数 | 393216 | 
| At the top | 倍長整数 | 327680 | 
| Vertically centered | 倍長整数 | 262144 | 
これらの引数は、アプリケーションウィンドウ(MDI モードのWindows)あるいはメインスクリーン(macOS あるいはSDI モードのWindows)の左上端から見た相対的な位置で表現されています。これらの引数はツールバーとメニューバーの存在を考慮します。
オプションの引数 * を渡すと、閉じられるときにその時点での位置とサイズが記憶されます。ウィンドウが再度開かれると、以前の位置とサイズが再現されます。この場合、vPos と hPos 引数はウィンドウが最初に開かれるときにのみ使用されます。
例題 1
以下のコードはクローズボックス付きの標準のウィンドウを開き、自動で"Input"フォームのサイズに調整します。フォームウィンドウは"fixed"に設定されていないため、ウィンドウはグローとズームボックスを持ちます:
 $winRef :=Open form window([Table1];"Enter")
例題 2
以下のコードはプロジェクトフォーム"Tools"に基づき、スクリーンの左上の位置にフローティングパレットを開きます。このパレットは閉じられた時の位置を記憶し、再度開かれるときにはその位置が使用されます:
 $winRef :=Open form window("Tools";Palette form window;On the left;At the top;*)
例題 3
このコードはmacOS上で実行する必要があり、実行すると、(例えばフォームボタンから呼び出された)ドキュメントウィンドウが表示されている間、シートウィンドウが表示されます:
 $myWin:=Open form window("sheet form";Sheet form window)
  // この瞬間ウィンドウは作成されるが非表示のまま
 DIALOG([aTable];"dialForm")
  //On Loadイベントが生成され、シートウィンドウが表示されます
  //シートウィンドウはタイトルバーの下から"ドロップダウン"形式で表示されます。
例題 4
以下の例では、.json フォームへのパスを使用して従業員リスト内のレコードを表示する場合を考えます:
var $myWin : Integer 
$myWin :=Open form window("/RESOURCES/OutputPersonnel.json";Plain form window)
 ALL RECORDS([Personnel])
 DIALOG("/RESOURCES/OutputPersonnel.json";*)
結果は以下のようになります:

参照
FORM GET PROPERTIES
Open window
Window Types
ウィンドウタイプ(互換性)
プロパティ
| コマンド番号 | 675 | 
| スレッドセーフである | ✗ |