ここでは、非常に一般的な開発者のニーズを2つ紹介します。1.ユーザーの条件に応じて、フォーム内のオブジェクトを並べ替えたい。- 2.2. リストで選択された項目に応じて、フォーム内のオブジェクトを表示、非表示、移動させたい。
これらのすべてのケースで、 フォームオブジェクトのタブ順序を変更 する必要が あります。現在では 4D v16 R4では、 実行時にプログラミングでタブ順序を変更 することができます。そのために、2つの新しいコマンドが作成されました。 FORM SET ENTRY ORDERと FORM GET ENTRY ORDER.
タブ順序を取得する
このコマンドは、現在のページ またはフォームオブジェクト名配列で指定されたページの現在のタブ順序を返します。
以下は、コマンドの構文です。
FORM GET ENTRY ORDER ( ; { } )form object name arraypage number
タブオーダーを設定する
このコマンドは、現在のページまたは指定されたページのタブ順序を定義することができます。
コマンドのシンタックスは以下の通りです。
FORM SET ENTRY ORDER (form object name array; {page number} )
アプリケーションの実行時にタブオーダーを実行すると、デザインフォームで定義されたタブオーダーが上書きされます。
注:フォームページには、ページ0オブジェクト、継承されたフォームオブジェクト、指定されたページサブフォームオブジェクト、指定されたページオブジェクトが含まれます。サブフォームの入力順序は、サブフォーム自体で定義されます。たとえば、” ” イベントで FORM SET ENTRY ORDERコマンドをサブフォームの “On Load“イベントで呼び出します。
例
実際に試してみたい方は、サンプルをダウンロードしてください。
ドキュメンテーション
詳細については、ドキュメントを参照してください。