列の作成

Oracle Application Development Framework(Oracle ADF)のバインディングで提供されるデータ・バインドUIコンポーネントを使用すると、データ・バインド表を作成できます。データ・バインド表を簡単に作成する際にデータ・コントロール・パレットを使用する場合は、モデルの属性はADF UIXにより自動的に更新されます。

ADFバインディングとデータ・コントロール・パレットの詳細は、次の項目を参照してください。

注意: この手順では、このトピックの最後に記述されているインライン・データがUIXファイルに挿入されているものとして説明しています。demoTableDataというインライン・データでは、行と列のデータが提供されます。

columnコンポーネントを作成するには、次のようにします。

  1. 目的のファイルの設計構造ウィンドウで、columnコンポーネントを挿入する表またはcolumnGroupノードを探します。
  2. コンポーネント・パレットのドロップダウン・リストから「Table Components」を選択し、columnコンポーネントを、選択した親ノードにドラッグ・アンド・ドロップします。

    「column」ノードが、展開された親ノードに挿入され、強調表示されます。

  3. プロパティ・インスペクタで、columnコンポーネントに対して次の属性を設定します。

    注意: データ・バインディングの使用は、「コンポーネント属性のデータ・バインディング」を参照してください。

  4. ステップ2と3を繰り返し、任意の数の列を追加します。
  5. 列のコンテンツの列スタンプを追加するには、作成した各列で次のようにします。
    1. 設計構造ウィンドウで、列ノードを右クリックして目的のコンポーネントを挿入します。
    2. または

      ${uix.current.colnumkey}と入力します。ここで、colnumkeyは列のコンテンツのキーです。たとえばこの例で示されているように表にバインドしたインライン・データを列で使用している場合は、${uix.current.firstColumntext}となります。

    3. ステップ5aを繰り返し、必要に応じて索引付けされた子を追加します。

例(UIX XML)


...
<provider>
  <data name="demoTableData">
    <inline>
      <!-- data for 4 rows -->
      <demoRowData firstColumnText="First row"
                   secondColumnText="First Button"
                   thirdColumnText="First col"
                   fourthColumnText="111"
                   isSelected="false"
                   isDisabled="true" />
      <demoRowData firstColumnText="Second row"
                   secondColumnText="Second Button"
                   thirdColumnText="Second col"
                   fourthColumnText="222"
                   isSelected="true" />
      <demoRowData firstColumnText="Third row"
                   secondColumnText="Third Button"
                   thirdColumnText="Third col"
                   fourthColumnText="333"
                   isSelected="false" />
      <demoRowData firstColumnText="4th row"
                   secondColumnText="4th Button"
                   thirdColumnText="4th row col"
                   fourthColumnText="444"
                   isSelected="false" />
      <!-- data for the row headers -->
      <demoRowHeaderData headerText="1"/>
      <demoRowHeaderData headerText="2"/>
      <demoRowHeaderData headerText="3"/>
      <demoRowHeaderData headerText="4"/>
      <!-- data for the 4 column headers -->
      <demoColHeaderData textKey="H1"/>
      <demoColHeaderData textKey="H2"/>
      <demoColHeaderData textKey="H3"/>
      <demoColHeaderData textKey="H4"/>
      <!-- formatting information for the rows -->
      <demoRowFormats/>
      <demoRowFormats displayGrid="false"/>
      <demoRowFormats/>
      <demoRowFormats/>
    </inline>
  </data>
</provider>
...
<contents>
  ...
  <table alternateText="No Items Found."
         blockSize="25"
         tableData="${uix.data.demoTableData.demoRowData}"
         columnHeaderData="${uix.data.demoTableData.demoColHeaderData}"
         rowHeaderData="${uix.data.demoTableData.demoRowHeaderData}">
    <contents>
      <!-- table's indexed children are the columns -->
      <column>
        <!-- first column stamp -->
        <contents>
          <styledText text="${uix.current.firstColumnText}"/>
        </contents>
      </column>

      <column>
        <!-- second column stamp -->
        <contents>
          <styledText text="${uix.current.secondColumnText}"/>
        </contents>
        <!-- second column header -->
      </column>

      <column>
        <!-- third column stamp -->
        <contents>
          <styledText text="${uix.current.thirdColumnText}"/>
        </contents>
      </column>

      <column>
        <!-- column formatting -->
        <columnFormat columnDataFormat="numberFormat"
                      width="45%"/>
        <!-- fourth column stamp -->
        <contents>
          <styledText text="${uix.current.fourthColumnText}"/>
        </contents>
      </column>
    </contents>
    ...
  </table>
</contents>
...    

columnとその名前付きの子について
名前変換および表の編集可能なセルについて

columnHeaderの挿入
zortableHeaderの挿入
columnGroupの使用
表の作成
tableコンポーネントの使用

 

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