【问题标题】:How to programmatically select nodes in Package Explorer in Eclipse plugin如何在 Eclipse 插件的 Package Explorer 中以编程方式选择节点
【发布时间】:2012-03-08 02:47:30
【问题描述】:

是否有人知道或有关于如何在 Eclipse 插件的 Package Explorer 视图中以编程方式选择节点的示例?我看到了一些关于如何获取当前选择的帮助,但没有看到如何设置它们。

谢谢。

【问题讨论】:

  • 嗨,您能否详细说明您在包资源管理器上要执行的操作。或者你试图在那里覆盖的东西
  • 已经在这里回答:link

标签: eclipse eclipse-plugin package-explorer


【解决方案1】:

尽管评论者已经指出了解决方案,但它使用的是内部 API。如果你想要一个可移植的 API 实现,试试这个。它将选择您工作区中的所有“打开”项目。

List<Object> openProjects = new ArrayList<Object>();

for( IProject project : ResourcesPlugin.getWorkspace().getRoot().getProjects() )
{
    if( project.isOpen() )
    {
        final IJavaProject javaProject = JavaCore.create( project );

        if( javaProject != null )
        {
            openProjects.add( javaProject );
        }

        openProjects.add( project );
    }
}

Object[] projectsToSelect = openProjects.toArray();
IViewPart view = window.getActivePage().showView( "org.eclipse.jdt.ui.PackageExplorer" );
view.getSite().getSelectionProvider().setSelection( new StructuredSelection( projectsToSelect ) );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-10
    • 2015-04-28
    • 2011-11-12
    相关资源
    最近更新 更多