| 4D v20.1FORM Convert to dynamic | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20.1
 FORM Convert to dynamic 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| FORM Convert to dynamic ( {aTable ;} formName ) -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| aTable | テーブル |   | フォームテーブル | |||||
| formName | テキスト |   | "クラシック"プロジェクトフォーム名またはテーブルフォーム名 | |||||
| 戻り値 | オブジェクト |   | formNameのフォームをダイナミックフォームに変換したもの | |||||
FORM Convert to dynamic コマンドは、formName 引数で指定したフォーム(クラシックフォーム)をダイナミックフォームへと変換し、それをオブジェクト型で返します。
クラシックフォーム とはバイナリーフォーマットでストラクチャーファイルに保存されている4D フォームのことです。ダイナミックフォーム とは4D オブジェクト(あるいは .json ファイル)でストラクチャーが定義されているフォームのことです。詳細な情報については、ダイナミックフォームの章を参照してください。
テーブルフォームを変換したい場合、aTable 引数にフォームテーブルを渡し、formName 引数にフォーム名を文字列として渡します。プロジェクトフォームの場合、フォーム名を直接formName 引数に渡します。
DIALOG コマンドに対して返されたオブジェクトを渡せば直接フォームが実行されるようにするために、FORM Convert to dynamic はいくつかのルールを適用しながらフォームを変換します:
注: フォームメソッドおよびフォームオブジェクトメソッドへの参照は、内部IDで書き出しがされます。これは、カレントデータベース内のみにおいて、formName のフォームのメソッドが変更されていない場合にのみ有効です。書き出されたフォームを他のコンテキストで使用したい場合、フォーム、あるいはフォームオブジェクト"メソッド"プロパティに、プロジェクトメソッド名を割り当てる必要があります(例題参照)。
クラシックなフォームを変換し、編集した後、それを表示したい場合を考えます。
元のフォームはこちらです:

 C_OBJECT($dynForm)
 $dynForm:=FORM Convert to dynamic("FormToConvert")
 $dynForm.pages[1].objects.TitleArea.stroke:="red"
 $dynForm.pages[1].objects.bOK.method:="myMethod" // プロジェクトメソッドを割り当てる
 DIALOG($dynForm)コードを実行した結果がこちらです:

	プロダクト: 4D
	テーマ: フォーム
	番号: 
        1570
        
        
        
	
	初出: 4D v17 R3
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	ランゲージリファレンス ( 4D v20)
	
	
	ランゲージリファレンス ( 4D v20.1)
	
	
	
 コメントを追加
コメントを追加