Web コンポーネントまたは SD コンポーネントの使用は、動作を 1 つのオブジェクト内に集中させることで、高度なコンポーネントの再利用性を確立するために用意された選択肢の 1 つです。
実行時に特定のコンポーネントをインスタンス化できることで、非常に動的なアプリケーションを構築できます。つまり、特定のアプリケーションパラメーターに応じて異なるコンポーネントをインスタンス化することで、アプリケーションのレイアウトや動作を変更することができます。
コンポーネントを使用する際に、Create 関数と CreateFromURL 関数を使用して、Web ページの特定のセクションに表示するオブジェクトを動的に変更することで、高度なパラメーター化が可能になります。
コンポーネントを使用するには、任意のオブジェクトにコンポーネントコントロールを挿入し、Create 関数または CreateFromURL 関数の実行結果を、コントロールオブジェクトのプロパティに割り当てます。
Create 関数は、コンポーネントのインスタンスを作成するために使用します。静的と動的の 2 つのオプションがあります。
Control.Object = Create( xxx, [ parameters ] )
入力値の説明:
Control
オブジェクトに追加するコンポーネントコントロールの名前です。
xxx
コンポーネント、またはコンポーネントを含む項目属性/変数です。
parameters
セミコロンで区切られた xxx パラメーターのリストです。
静的オプションを使用する場合は、実行時に Web コンポーネントの参照を変更することはできません。一方、動的オプションを使用する場合は、Web コンポーネントの名前を実行時に変更することができますが、パラメーターとデータタイプは固定されます。
(*) スマートデバイスの場合、パネルの名前でないことに注意してください。命名方法については、Call 変数を参照してください。
// 静的な作成
Control.Object = View.Create( &parm1, &parm2)
// Create 関数 (固定パラメーターを持つ変数オブジェクト) を使用した動的な作成
&Object = "View" // またはスマートデバイスの "sd:WorkWithDevicesPerson.Person.Detail" で次のように作成
Control.Object = Create(&Object, &parm1, &parm2)
// CreateFromURL 関数を使用した動的な作成
&Object = "View"
&link = link( &Object , &parm1, &parm2 )
Control.Object = CreateFromURL(&link)
Web: GeneXus Work With パターンについて確認してください。GeneXus Work With パターンはこの機能を使用して TabbedView Web コンポーネントを作成します。
この機能は、GeneXus 15 Upgrade 12 以降のスマートデバイスでも利用できます。
CreateFromURL 関数
Create 関数
|