ツリーを1つのタブに追加しようとしています:
Tab tmp = new Tab();
TreeNode root = new DefaultTreeNode("root",null);
TreeNode test = new DefaultTreeNode("test",root);
tmp.getChildren().add((UIComponent)root);
誰でも私を助けることができますか?
ツリーを1つのタブに追加しようとしています:
Tab tmp = new Tab();
TreeNode root = new DefaultTreeNode("root",null);
TreeNode test = new DefaultTreeNode("test",root);
tmp.getChildren().add((UIComponent)root);
誰でも私を助けることができますか?
アコーディオンパネル - モデルを使用することをお勧めします
アコーディオンは、モデルによってサポートされる動的な数のタブを表示できます。タブはオンザフライで生成されるため、タブの追加/削除も簡単に実装できます。
例を見てください... INMO は、タスクを実装する方法です... (はるかに簡単で、プライムフェイスがショーケースで実装する方法です)
与えられた例を展開するには
タブに追加
<p:tree value="#{player.root}" var="node" id="tree">
<p:treeNode id="treeNode">
<h:outputText value="#{node}" id="lblNode"/>
</p:treeNode>
</p:tree>
プレーヤークラスに追加します...
private TreeNode root;
public initTree() {
root = new DefaultTreeNode("Root", null);
TreeNode node0 = new DefaultTreeNode("Node 0", root);
TreeNode node1 = new DefaultTreeNode("Node 1", root);
TreeNode node2 = new DefaultTreeNode("Node 2", root);
TreeNode node00 = new DefaultTreeNode("Node 0.0", node0);
TreeNode node01 = new DefaultTreeNode("Node 0.1", node0);
TreeNode node10 = new DefaultTreeNode("Node 1.0", node1);
TreeNode node11 = new DefaultTreeNode("Node 1.1", node1);
TreeNode node000 = new DefaultTreeNode("Node 0.0.0", node00);
TreeNode node001 = new DefaultTreeNode("Node 0.0.1", node00);
TreeNode node010 = new DefaultTreeNode("Node 0.1.0", node01);
TreeNode node100 = new DefaultTreeNode("Node 1.0.0", node10);
}
public TreeNode getRoot() {
return root;
}
これがplayer.javaのソースです
編集
ループ内の p:tree に関する問題 (ui:repeat、p:dataTable、...)を見た後
と
問題 3640: ループ (ui:repeat、p:tabView、...) 内で p:tree を使用して状態を保存中に NullPointerException が発生する
この機能に関して未解決のバグがあるようです...