Tips

サブフォームのGOTO AREA

日付2007/11/12
ID07-024
バージョン2004
プラットフォームWin & Mac

サブフォームではGOTO AREAは使えません。GOTO AREAに変わる方法が必要です。もし順序良く並んだ次のフィールドをフォーカスさせるだけならPOST KEYを利用してtabキーを押したのと同じ動作をさせることで代用できます。

例えばField1に何もデータが入力されていないとき、ダイアログを表示してデータを決定入力させ、元のリストフォームに戻るようなとき、Field1オブジェクトメソッドに次のようなプログラムをすることで次の入力順序に設定されたフィールドをフォーカス、つまり次に入力するべきフィールドを入力状態にすることができます。

Case of 
	\ (Form event=On Getting Focus ) & ([Table]Field1="")  `Field1に何も入力されていないとき
		v_old_fild:=[Table]Field1
		DIALOG([Table];"Dialog_input_Field1")
		If ([Table]Field1#v_old_fild)
			POST KEY(9)  `Tab Key
		End if 
End case 

なお入力順序は変更できます。入力順序の設定方法については、デザインリファレンスを参照してください。