列挙モードでのADFリスト・バインディングのカスタマイズ

データ・コントロール・パレットから挿入する次のUIコントロールに、列挙モードのADFリスト・バインディングを設定できます。

列挙モードのバインディングでは、ユーザーは表示リストから値を選択して、データ・コレクションの属性を更新できます。 列挙モードでモデル・リスト・バインディング・エディタを使用して、コントロールの対象となるデータ・コレクションおよび属性を選択し、ユーザーが選択する値のセットを指定します。適切な選択肢を指定するには、バインドされた属性に指定される値を把握しておく必要があります。

列挙モードでリスト・バインディングを設定するには、次のようにします。

  1. 「UIエディタ」でデータ・パネルを開きます。

  2. 「データ・コントロール・パレット」で、表示する属性を選択します。

    データ・コレクションではなく、必ず属性を選択します。

  3. 「データ・コントロール・パレット」から、目的のコントロールをデータ・パネルに追加します。

  4. 「構造」ウィンドウから、コントロール用のリスト・バインディング・エディタを表示します。

  5. リスト・バインディング・エディタでは、「リスト・バインディング・モード」ドロップダウン・リストから「列挙モード」を選択します。

  6. 「データ・コレクション」リストから、更新する属性が含まれるデータ・コレクションを選択します。

  7. 「属性」リストから、値リストに表示する属性を選択します。

  8. イテレータ・ドロップダウン・リストが、選択されたデータ・コレクションにアクセスするために、すでに指定のイテレータを表示している場合は、選択を変更しません。 ドロップダウンが空の場合、「新規」をクリックしてイテレータを生成し、ドロップダウン・リストに表示します。

    警告: ドロップダウン・リストでイテレータ選択を変更すると、前に作成した属性の選択が削除されます。 イテレータの選択を変更する前に、元の属性選択を記録しておいてください。 必要に応じて「取消」を押し、元の属性選択を更新しないでバインディング・エディタを終了できます。 生成したバインディングを使用しない場合、未使用のイテレータ・バインディングをバインディング定義ファイルから削除できます。エディタで「取消」を押しても、バインディングは自動的に削除されません。

  9. コントロールがコンボボックス、リスト、ラジオ・ボタン・グループの場合、コントロールに表示する順番で、「一連の値」に値を入力します。 [Enter]を押して値を設定し、新しい値の入力を開始します。属性に対して有効な値を入力する必要があります。

  10. コントロールがスピナーの場合、定義する範囲からユーザーが選択できるようにする場合は、「値の範囲」を選択します。 特定のリストを定義する場合、「静的値」を選択して、リストやコンボボックスに対して前述のとおりに値を入力します。

  11. 「OK」をクリックし、バインディング設定を保存します。

JDeveloperはjbInit()メソッド内にsetModel()メソッドを追加して、コントロール・バインディングを生成します。 たとえば、データ・コントロール・パレットからスライダを挿入後、メタデータを指定するためにDataControlIdを参照するメソッドは次のようになります。

mySpinner.setModel((BoundedRangeModel)panelBinding.bindUIControl("DataControlId", mySpinner));

新しいバインディング用のメタデータが、バインディング定義ファイルに表示されます(UIModel.xml)。


<DCControl
         id="SameAsDataCollectionName"
         DefClass="oracle.jbo.uicli.jui.JUComboBoxDef | JUListSingleSelDef | JUButtonGroupDef | JUSpinnerDef"
         SubType="DCComboBox | DCListSingleSel | DBButtonGroup | DCSpinner"
         IterBinding="DataCollectionIteratorId"
         ApplyValidation="false"
         ListOperMode="O"
         StaticList="true"
         <? Combobox  only ?>
         Editable="false"
         <? List only ?>
         ShouldScroll="false"
         <AttrNames>
            <Item Value="MySelectedAttribute" />
         </AttrNames>
</DCControl>    

ADFバインディングとSwingコントロールについて

 

Copyright © 1997, 2004, Oracle. All rights reserved.