2

希望通过 Eclipse RCP 应用程序的代码自动触发 Tree selectionChanged 事件。任何指针将不胜感激。

4

3 回答 3

3

如果您使用的是 JFace TreeViewer,您可以获得选择,将其设置为null,然后将旧选择设置回来。像这样:

TreeSelection oldSelection = new TreeSelection((TreeSelection)treeViewer.getSelection().getPaths());
treeViewer.setSelection(null);
treeViewer.setSelection(oldSelection);
于 2013-10-09T19:13:09.313 回答
1

如果您使用的是TreeViewer,则可以使用它以编程方式选择项目:

viewer.setSelection(new StructuredSelection(viewer.getElementAt(position)), true);

如果您使用的是Tree,请使用以下命令:

tree.setSelection(tree.getItem(position));
于 2013-10-09T20:52:05.077 回答
1

此外,对于希望根据您自己的节点模型中的对象设置所选树节点的其他人 - 您可以这样做:

IStructuredSelection selection = new StructuredSelection(yourObjectFromModel);
tree.setSelection(selection, true); 

感谢劳里的那个。

于 2014-08-26T05:39:24.103 回答