如何从 eclipse-plugin 中的代码 select 树视图节点

How to select a treeview node from code in eclipse-plugin

我的 Eclipse 插件中有一个自定义大纲,使用 class TreeViewer 实现,我使用以下代码创建了这个大纲:

public class MyOutlinePage extends ContentOutlinePage
(...)
            Object[] data = (...)
            TreeViewer treeViewer = getTreeViewer();
            treeViewer.setInput(data);

设置输入后,我需要 select 大纲中的一个特定元素。 例如,我需要在大纲中 select 元素 data[2]。 它必须与我使用鼠标单击元素相同。

树查看器有一个 setSelection 方法来以编程方式更改其选择。如果您 将您的域对象 包装成 StructuredSeletion,则相应的 TreeItem 将被选中。

treeViewer.setSelection( new StructuredSelection( data[2] ) );