ADFスクロール・バインディングのカスタマイズ

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

スクロール・バインディングにより、ユーザーは、バインドされたデータ・コレクションの、現在のデータ・オブジェクトの相対的な位置を表示できます。コントロール・サムあるいはインジケータの位置は、データ・コレクションの範囲全体のうち表示されているデータ・オブジェクトの数に比例します。スクロールバー・バインディング・エディタを使用して、コントロールの操作対象となるデータ・コレクションを選択します。

スクロール・バインディングを設定するには、次のようにします。

  1. データ・パネルをJavaビジュアル・エディタで開きます。

  2. データ・コントロール・パレットから開いたフォームまたはパネルまで、スクロールするデータ・コレクションをドラッグします。

  3. 続いて、コントロールをデータ・パネルに追加します

  4. 目的のコントロール用のスクロール・バインディング・エディタを表示します

  5. スクロール・バインディング・エディタで、スクロールするデータ・オブジェクトを含む「データ・コレクション」を選択します。

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

    警告: ドロップダウン・リストでイテレータの選択内容を変更すると、以前選択していた属性が削除されます。イテレータの選択を変更する前に、選択されていた元の属性を記録しておく必要があります。必要に応じて「取消」を押し、元の属性選択を更新しないでバインディング・エディタを終了できます。

  7. データ・コレクション・オブジェクト(行)・カウントを使用できます。通常は、「スクロール範囲の推定」を選択したままにします。データ・コレクションによってキャッシュされていないデータベースの行をカウントする場合には、このオプションを選択します。

    注意: このオプションが表示されるのは、モデル・プロジェクトにOracle ADF Business Componentsが含まれる場合のみです。他のビジネス・サービスがモデル・プロジェクトに作成されると、このオプションはサポートされません。ADF Business Componentsモデル・プロジェクトの場合、このオプションを選択しない(つまり実際の行数を強制的にカウントする)と、そのための問合せが起動される可能性があるため、デフォルトでこのオプションが選択されています。

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

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

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

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


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