要在Eclipse菜单窗口下显示辅助视图->;显示视图

要在Eclipse菜单窗口下显示辅助视图->;显示视图,eclipse,menu,eclipse-plugin,Eclipse,Menu,Eclipse Plugin,我创建了一个Eclipse插件应用程序,其中有许多在运行时为单个静态视图创建的辅助视图。在菜单Window->Show View中,仅显示在plugin.xml中静态创建的视图条目 但是静态创建的视图在显示结果方面是无用的,因为结果是在运行时在辅助视图中动态显示的 因此,我想在菜单Window->Show view中显示这些辅助视图,并从中删除该静态视图的条目 有可能这样做吗? 如果是的话,这方面的任何建议都会非常有用。如果我相信,对“窗口>显示视图”菜单的内容进行精确控制的最可靠的方法是构建一

我创建了一个Eclipse插件应用程序,其中有许多在运行时为单个静态视图创建的辅助视图。在菜单
Window->Show View
中,仅显示在
plugin.xml
中静态创建的视图条目

但是静态创建的视图在显示结果方面是无用的,因为结果是在运行时在辅助视图中动态显示的

因此,我想在菜单
Window->Show view
中显示这些辅助视图,并从中删除该静态视图的条目

有可能这样做吗? 如果是的话,这方面的任何建议都会非常有用。

如果我相信,对“窗口>显示视图”菜单的内容进行精确控制的最可靠的方法是构建一个

也就是说,创建自己版本的短名单视图菜单项,代码类似于

,如果我相信,对“窗口>显示视图”菜单内容进行精细控制的最可靠方法是构建一个


也就是说,创建自己版本的短名单视图菜单项,代码类似于

,次视图的设计不适合这样使用。次视图是以编程方式创建的视图,您提到的列表是从扩展点生成的

如果您想列出所有活动视图,您应该创建自己的菜单并将其添加到Eclipse中

获取您使用的视图列表的步骤

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IWorkbenchPage page = window.getActivePage();
IViewReference[] viewReferences = page.getViewReferences();
viewReferences[i].getId();
viewReferences[i].getSecondaryId();

I次视图的设计不适合这样使用。次视图是以编程方式创建的视图,您提到的列表是从扩展点生成的

如果您想列出所有活动视图,您应该创建自己的菜单并将其添加到Eclipse中

获取您使用的视图列表的步骤

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IWorkbenchPage page = window.getActivePage();
IViewReference[] viewReferences = page.getViewReferences();
viewReferences[i].getId();
viewReferences[i].getSecondaryId();

亲爱的VonC,谢谢您的回复。我已经看过了你提到的线程和源代码。但我认为函数ShowViewMenu()不支持任何参数,如辅助视图id。因此,我不确定这样做是否可行。另外,addShowViewShortcut()函数不支持辅助id的参数。有关存在类似问题的其他用户的信息,请参阅以下内容:尊敬的VonC,感谢您的回复。我已经看过了你提到的线程和源代码。但我认为函数ShowViewMenu()不支持任何参数,如辅助视图id。因此,我不确定这样做是否可行。另外,addShowViewShortcut()函数不支持辅助id的参数。有关具有类似问题的其他用户的信息,请参阅以下内容: