如何select一个treeview节点像点击鼠标一样更新属性视图
How to select a treeview node like a click of mouse to update properties view
我的 Eclipse 插件中有一个自定义大纲,使用 class TreeViewer
实现,我使用以下代码创建了这个大纲:
public class MyOutlinePage extends ContentOutlinePage
(...)
Object[] data = (...)
TreeViewer treeViewer = getTreeViewer();
treeViewer.setInput(data);
设置输入后,我需要select大纲中的一个特定元素。
例如,我需要select大纲中的元素data[2]
。
我正在尝试使用此代码来 select 大纲元素:
treeViewer.setSelection(new StructuredSelection(data[2]));
如果我使用鼠标 select 大纲项目,大纲被 select 编辑并且 "Properties Views" 被更新。大纲项目 selected 如下所示:
但是如果我 select 使用方法 setSelection
的大纲项目 "Properties Views" 未更新并且大纲项目 select 编辑如下所示:
我需要使用代码 select 勾勒项目,这个 selection 必须像鼠标点击一样更新 "Properties View"。
灰色突出显示大纲视图不是活动部分。属性视图始终显示活动部分的值。
您可以通过以下方式激活大纲视图:
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.showView(IPageLayout.ID_OUTLINE, null, IWorkbenchPage.VIEW_ACTIVATE);
但请注意,这会将焦点从当前活动的任何部分移开。
我的 Eclipse 插件中有一个自定义大纲,使用 class TreeViewer
实现,我使用以下代码创建了这个大纲:
public class MyOutlinePage extends ContentOutlinePage
(...)
Object[] data = (...)
TreeViewer treeViewer = getTreeViewer();
treeViewer.setInput(data);
设置输入后,我需要select大纲中的一个特定元素。
例如,我需要select大纲中的元素data[2]
。
我正在尝试使用此代码来 select 大纲元素:
treeViewer.setSelection(new StructuredSelection(data[2]));
如果我使用鼠标 select 大纲项目,大纲被 select 编辑并且 "Properties Views" 被更新。大纲项目 selected 如下所示:
但是如果我 select 使用方法 setSelection
的大纲项目 "Properties Views" 未更新并且大纲项目 select 编辑如下所示:
我需要使用代码 select 勾勒项目,这个 selection 必须像鼠标点击一样更新 "Properties View"。
灰色突出显示大纲视图不是活动部分。属性视图始终显示活动部分的值。
您可以通过以下方式激活大纲视图:
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
page.showView(IPageLayout.ID_OUTLINE, null, IWorkbenchPage.VIEW_ACTIVATE);
但请注意,这会将焦点从当前活动的任何部分移开。