1

在 Eclipse RCP 中,我以编程方式在项目中创建资源(包含文件的文件夹),我希望在项目资源管理器中选择并展开文件夹(我知道它的路径)(假设它已打开)。效果应该和“Link with Editor”按钮类似,但是这里的资源不是在编辑器中打开的。

4

1 回答 1

4

首先获取工作台页面 -

在视图或编辑器中使用:

IWorkbenchPage page = getSite().getPage();

在别处使用

page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();

找到视图,ProjectExplorer视图id在IPageLayout.ID_PROJECT_EXPLORER

IViewPart view = page.findView(IPageLayout.ID_PROJECT_EXPLORER);

项目资源管理器视图实现ISetSelectionTarget,因此您可以执行以下操作:

((ISetSelectionTarget)view).selectReveal(new StructuredSelection(object to show));

或在 Java 16 及更高版本中使用 instanceof 类型模式:

if (view instanceof ISetSelectionTarget setSel) {
   setSel.selectReveal(new StructuredSelection(object to show));
}
于 2013-10-05T08:38:19.727 回答