我遇到以下问题:我创建了一个树查看器并绑定了一个数据模型。这棵树崩溃了 现在我想在树中选择一个特定节点:
treeViewer.setSelection(new StructuredSelection(person), true);
Person是数据模型中的自定义对象之一。如果树被展开,将找到并选择节点
因为节点是另一个节点(3级)的子节点,所以如果树被折叠,则不会发生任何事情
是否可以选择/聚焦节点,扩展父项等。?
我知道我可以递归遍历所有节点并尝试找到正确的节点,但是有一种方法可以帮我吗?或者也许有一个不同的setSelection调用,让我扩展树路径?
答案 0 :(得分:0)
您可以使用TreeSelection
。这需要TreePath
作为参数 - 列出路径中的所有节点。
TreePath path = new TreePath(... array of nodes from root to person ...);
treeViewer.setSelection(new TreeSelection(path), true);