ナビゲーション・モードでのADFリスト・バインディングのカスタマイズ

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

ナビゲーション・モード・バインディングにより、ユーザーはデータ・コレクションのオブジェクト(行)間を移動できるようになります。 ナビゲーション・モードのリスト・バインディング・エディタを使用して、オブジェクト用に表示するためのデータ・コレクションおよび属性を選択します。 ユーザーが、バインドされたコントロールを使用して、現在のデータ・オブジェクト選択を変更すると、属性を介して同じデータ・コレクションにバインドされている親パネル内のコントロールはすべて、選択されたデータ・オブジェクトから表示されます。

注意: コンボボックス、ラジオ・ボタン・グループ、スピナーとは異なり、「NavigationBar」コントロールは、ADFイテレータ・バインディングを使用して、データ・コレクション上の現在のデータ・オブジェクトの位置を管理します。 JUNavigationBarのJClientパネルへの追加の詳細は、「ADFイテレータ・バインディングのカスタマイズ」を参照してください。

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

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

  2. 「データ・コントロール・パレット」で、ナビゲートするのに必要なデータ・コレクションを選択します。

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

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

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

  6. 「データ・コレクション」リストから、ナビゲートするデータ・オブジェクトが含まれるデータ・コレクションを選択します。

  7. 「使用可能な属性」リストで、表示する属性を選択し、それを「属性の表示」リストに追加します。 「属性の表示」リストには、いくつでも属性を追加できます。

    ヒント: さらに情報を表示することで、各データ・オブジェクト選択の内容についてユーザーの理解が深まると考えられる場合には、複数の属性を選択します。

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

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

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

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

myComboBox.setModel((ComboBoxModel)panelBinding.bindUIControl("DataControlId", myComboBox));

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


<DCControl
         id="SameAsDataCollectionName"
         DefClass="oracle.jbo.uicli.jui.JUComboBoxDef | JUListSingleSelDef | JUButtonGroupDef | JUSpinnerDef"
         SubType="DCComboBox | DCListSingleSel | DCButtonGroup | DCSpinner"
         IterBinding="MyDataCollectionIterator"
         ApplyValidation="false"
         ListOperMode="1"
         StaticList="true"
         <? List control only ?>
         ShouldScroll="false"
         <AttrNames>
            <Item Value="MySelectedAttribute" />
         </AttrNames>
         <? Spinner control only ?>
         <SpinnerNumberModelDef >
		 </SpinnerNumberModelDef>
		 <SpinnerDateModelDef
			CalendarField="0" >
		 </SpinnerDateModelDef>
</DCControl>    

ADFバインディングとSwingコントロールについて
JClientコントロールを使用したUIのナビゲートについて

JClient JUNavigationBarコントロールの使用

 

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