属性コントロール・バインドの設定

次のSwingコントロールおよびJClient(JU)コントロールに対し、JClient属性モデルを使用してコントロール・バインドを設定できます。

注意: Swingコントロールの中には、上のリストにあるように、documentプロパティでコントロール・バインドを設定するものがあります。

属性コントロール・バインドの動作は、使用するコントロールのタイプによって異なります。ユーザーは、ビュー・オブジェクトで定義される単一の属性の値を表示、または場合によっては編集できます。ビュー・オブジェクトおよび属性は、「model」プロパティ・エディタで選択します。コントロールが編集可能なフィールドの場合、対応する属性のビジネス・コンポーネント・プロジェクトにコントロール・ヒントを設定して、その属性を更新可能にします。

属性コントロール・バインドを設定するには、次のようにします。

  1. UIエディタでデータ・パネルを開き、使用するSwingコントロールまたはJClientコントロールをパネルに追加します。

  2. コントロールに対するmodelまたはdocumentプロパティのプロパティ・エディタを表示し、リストから「JClient属性バインド」を選択します。(右端の「...」ボタンではなく、リストを選択してください)

  3. 「ビュー・オブジェクト」リストから、フォームに表示する属性を含むビュー・オブジェクトを選択します。

  4. 「属性」リストから、コントロールの値として表示する属性を1つ選択します。

  5. JProgressBar、JScrollBar、またはJSliderの各コントロールの場合、「最小値」「最大値」の2つの値を指定できます。これらの値は、コントロールでサポートされる最初と最後の値です。

  6. JSliderおよびJScrollBarのコントロールでは、目盛りの間隔を表す「範囲」を指定できます。1つ1つの目盛りは、バインドされている属性にユーザーが適用できる値を表しています。

    注意: スライダおよびスクロールバーでは、スライダの範囲値と目盛りの数を掛けたものに最小値を足して、属性値が算出されます。たとえば、最小値が20、範囲値が10で、ユーザーがスライダで3番目の目盛りを選択した場合、属性値は20+(10×3)で50になります。

  7. 「OK」をクリックし、プロパティ設定を保存します。

  8. JDeveloperによってクラス・ファイルに次のコードが追加され、選択したコントロールがビュー・オブジェクト属性にバインドされます。documentプロパティを使用するコントロール(JTextFieldなど)の場合、コードは次のようになります。

    myJTextField.setDocument(JUTextFieldBinding.createAttributeBinding(getPanelBinding(), myJTextField, "MyViewObject", null, "MyVOIter", "MyAttribute"));

    modelプロパティを使用するコントロール(JProgressBarなど)の場合、コードは次のようになります。

    myJProgressBar.setModel(JUProgressBarAttrBinding.createAttributeBinding(getPanelBinding(), myJProgressBar, "MyViewObject", null, "MyVOIter", "MyAttribute", 0, 100));

    最後の2つの引数(0と100)は、JProgressBarの最小値と最大値です。


Swingコントロール用JClientモデルについて