データには元々、ツリー構造を持つものがあります。たとえば、小規模なデータのツリーの例として、ショッピング・アプリケーションのカテゴリ、サブカテゴリおよび項目などが該当します。最上位またはルート・ノードは「店」で、その下に独自のサブノードを含む「本」および「ハードウェア」というノードがあります。
ADF UIXでは、ツリーの各ノードは、キーと値のペアを含むdataObjectです。ツリーの各DataObjectには、キーと値のペアのセットが含まれる場合があります。UIX XMLで書かれた前述の階層ツリーは、このように表示されます。
Example in UIX XML:
<nodes text="店"
destination="http://www.oracle.com"
destinationText="詳細情報"
expandable="expanded">
<nodes text="本"
destination="http://www.oracle.com"
destinationText="詳細情報"
description="説明: お買得、お買得、お買得!"
expandable="expanded">
<nodes text="セール"
destination="http://www.oracle.com"
expandable="expanded">
<nodes text="文庫"
destination="http://www.oracle.com"/>
</nodes>
<nodes text="フィクション"
destination="http://www.oracle.com"/>
<nodes text="ノンフィクション"
destination="http://www.oracle.com"/>
</nodes>
<nodes text="ハードウェア"
expandable="expanded">
<nodes text="デスクトップ"
destination="http://www.oracle.com"/>
<nodes text="ノートブック"
destination="http://www.oracle.com"/>
</nodes>
</nodes>
UIX XMLでは、textキーに関連する値によってノードが参照されます。たとえば、前述のツリーのルートは「店」ノードとして参照されます。nodesキーで問い合せられるノードは、子を含むDataObjectListを返します。たとえば、「店」ノードをnodesキーで問い合せると、ノード「本」および「ハードウェア」を含むDataObjectListが返されます。
ツリー・コンポーネントとbrowseMenuコンポーネントは、ツリー構造のデータを表示するように設計されています。これらのコンポーネントは、同じデータソースの異なる2つのビューを表示できます。ツリー・コンポーネントによってブラウザでレンダリングされる前述の階層ツリーは、このように表示されます。
browseMenuコンポーネントによってブラウザでレンダリングされる同じ階層ツリーは、このように表示されます。
どちらのコンポーネントを使用しても、ユーザーはツリー階層を移動できます。ツリー・コンポーネントでは、データの階層は明確に表示されます。最上位ノードは「店」であり、このノードには2つの子ノードである「本」と「ハードウェア」があります。「本」の下には、子である「セール」、「フィクション」および「ノンフィクション」があります。「セール」ノードはリーフ・ノードではありませんが、「フィクション」と「ノンフィクション」ノードはリーフ・ノードです。「文庫」は「セール」の子です。「ハードウェア」の下には、子である「デスクトップ」と「ノートブック」があります。ツリー・コンポーネントではdescriptionキーを無視し、expandableキーを使用して子のノードを表示する必要があるかどうかを決定します。
ただし、browseMenuコンポーネントでは、階層全体が表示されませんが、ルート・ノード(Shop)から現行ノード(Books)へのパスは最上部のナビゲータに表示されます。現行ノードの子(セール、フィクション、ノンフィクション)は「カテゴリ」と「項目」ヘッダーの下のリンクです。「カテゴリ」ヘッダーの下のリンクにはリーフ・ノードではないものが、「I項目」ヘッダーの下のリンクにはリーフ・ノードが表示されます。ナビゲータ内のリンクでも、ヘッダー「カテゴリ」の下のリンクでも、同じようなページが表示されます。たとえば、「セール」というリンクをクリックすると、最上部のナビゲータが「店 > 本 > セール」で、「項目」ヘッダーの下にリンク「文庫」がある同じページが表示されます。browseMenuコンポーネントではexpandableキーを無視しますが、descriptionキーを使用してノードの下のテキスト(たとえば、「説明: お買得、お買得、お買得!」)を表示します。
hGridとその名前付きの子について
treeについて
browseMenuについて
hGridの作成
ツリーの作成
browseMenuの作成
ナビゲーション・コンポーネントの使用
tableコンポーネントの使用
Copyright © 1997, 2004, Oracle. All rights reserved.