我需要在使用文件夹的“+”号伸展树(Splay Tree)节点时获取树节点的子记录。如果任何特定节点没有子节点,“+”号应该消失。这个要求和link中的要求类似。
但这对我来说有些不起作用。仅父节点显示文件夹,子节点不默认为文件夹。下面是我正在使用的代码。我已经从上面的链接复制了代码。唯一的变化是用树节点替换数据源。
public void onModuleLoad() { Tree adminTree = new Tree(); adminTree.setID("adminTreeId"); adminTree.setModelType(TreeModelType.PARENT); adminTree.setRootValue("/"); adminTree.setAutoOpenRoot(true); TreeGrid adminTreeGrid = new TreeGrid(); adminTreeGrid.setWidth(500); adminTreeGrid.setHeight(400); adminTreeGrid.setShowOpenIcons(false); adminTreeGrid.setShowDropIcons(false); //adminTreeGrid.setClosedIconSuffix(""); adminTreeGrid.setAutoFetchData(true); adminTreeGrid.setData(adminTree); TreeNode treeNode1 = new TreeNode(); treeNode1.setTitle("Node 1"); treeNode1.setID("node1"); TreeNode treeNode2 = new TreeNode(); treeNode2.setTitle("Node 2"); treeNode2.setID("node2"); TreeNode treeNode3 = new TreeNode(); treeNode3.setTitle("Node 3"); treeNode3.setID("node3"); TreeNode treeNode4 = new TreeNode(); treeNode4.setTitle("Node 4"); treeNode4.setID("node4"); adminTree.add(treeNode1, "/"); adminTree.add(treeNode2, "/"); adminTree.add(treeNode3, treeNode1); adminTree.add(treeNode4, treeNode2); adminTreeGrid.draw(); }
“节点 1”和“节点 2”显示带有“+”号的文件夹,但“节点 3”和“节点 4”不显示,请提供展开它们的选项。
如果我遗漏了什么,请帮忙。
谢谢, 瓦姆西
最佳答案
默认情况下对每个节点使用 setIsFolder(true) 并使其对于叶节点为 false 来解决此问题。如果有人需要示例代码,请告诉我。
关于icons - SmartGWT TreeGrid 的叶/子节点不显示用于展开它们的文件夹图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6055335/