当前位置: 首页 > 知识库问答 >
问题:

树中的所有节点没有展开

曹驰
2023-03-14

我正在努力学习RCP中的TreeViewer。我为此写了一小段代码

public class TreeViewClass extends ViewPart {

public static final String ID = "TreeViewerDemo.treeView";

public TreeViewClass() {
    // TODO Auto-generated constructor stub
}

@Override
public void createPartControl(Composite parent) {

    TreeViewer treeViewer = new TreeViewer(parent, SWT.BORDER);
    Tree tree = treeViewer.getTree();

    TreeItem root = new TreeItem(tree, 0);
    root.setText("Root Node");

    TreeItem childNode1 = new TreeItem(root, 0);
    childNode1.setText("Child Node 1");

    TreeItem childNode2 = new TreeItem(childNode1, 0);
    childNode2.setText("Child Node 2");
}

@Override
public void setFocus() {
    // TODO Auto-generated method stub

}

}

我的代码哪里有问题?

谢了!

共有1个答案

施刚毅
2023-03-14

如果正在使用TreeViewer,则不应使用TreeItem。相反,您使用内容提供程序和标签提供程序。如果要使用TreeItem,请使用Tree。将两者混合会产生不可预测的结果。

使用TreeItem时,需要对每个要展开的项调用SetExpand(true)

 类似资料:
  • 假设我有一个简单的二叉树节点类,如下所示: 如何添加一个能够递归遍历任何大小的树的方法,从左到右访问每个现有节点,而无需重新访问已遍历的节点? 这行得通吗?

  • 问题内容: 但是我 没有 关闭(展平)表,一个孩子可以有很多父母,并且ID遍历不一定是按顺序进行的。嵌套深度没有限制。 假设不可能使用循环引用…我想返回遍历层次结构所需的所有行。 假定下表​​: 给定我将如何编写单个查询以返回所有行(获取所有后代的Relationips)? 同样,假设我期望第2、3、4、7、8行 鉴于我希望第6和第10行 偶然的假阳性和结果中重复的行都是可以接受的。缺少行是不可接

  • 问题内容: 在使用Jenkins Docker插件时,可能由于错误而导致无法启动群集。我没有注意,目前有数千个脱机节点无法启动。 底线-是否可以批量删除Jenkin中的节点(从属),清理所有脱机节点甚至删除所有节点?重置Jenkins服务器没有帮助,而且我在Jenkins API中找不到方法。 在我开始编写Selenium脚本之类的东西之前,请感谢任何想法。 非常感谢! 问题答案: 该脚本的注释部

  • 我想获取属于一个节点的所有标签,如果SDN4.0中有一种方法可以在一个查询中实现这一点吗? 例如,我当前的回购协议如下 有没有反正我可以简单地 检索此账本节点的所有标签。 这本书的课程是 是的,默认情况下,我的Book节点应该有两个标签和。由于我在回购中有一个更新方法来添加另一个标签。无论如何,我可以找回这本书与所有3个标签? 谢啦

  • 我有一个二叉树,每个节点上都有一个单词。 在另一个类中,我需要逐个访问节点,然后操作单词。从另一个类逐个访问节点的最佳方法是什么? 在我的币树类中,每个节点都有一个左子、右子和一个值(String)。我有三个方法,printinorder-,插入和find节点。查找节点接收一个字符串,并查看该字符串是否存储在任何节点值中。 我有另一个类,需要一个接一个地获取节点,但是我不确定从另一个类中获取的最佳

  • 假设我在一棵树中有一个节点,我如何获得所有的叶节点,它们的祖先是这个节点?我这样定义了TreeNode: