我是JSF编程的新手。我想从Primefaces网站实现树视图example。
JSF页面
<h:form id="form">
<p:tree value="#{TreeViewController.root}" var="node" dynamic="true" cache="true" id="tree" animate="true">
<p:treeNode>
<h:outputText value="Node"/>
</p:treeNode>
</p:tree>
</h:form>
托管豆
private TreeNode root;
public TreeView() {
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;
}
我想问你这两个问题:
单击节点时如何打开新页面?
如何将Java哈希图显示在树中作为节点的子节点?例如,我想用Java hashmap或Java map填充树视图。
最佳答案
单击节点时如何打开新页面?
在您链接的示例中,为每个树节点创建了一个输出文本,您是否尝试过在其中放置其按钮元素之一?也许command link?然后将其配置为open in a new window
如何将Java哈希图显示在树中作为节点的子节点?例如,我想用Java hashmap或Java map填充树视图。
如果我理解正确,则希望使用HashMap中的值加载节点。这将意味着使用迭代器并为托管bean中的每次迭代创建一个节点。加上您的逻辑来制作树形结构和链接。
哦,谢谢您向我介绍Primefaces。 :-)