1

我使用 CNF 在我的 RCP 应用程序中创建类似于 Project Explorer 的视图。当用户右键单击视图中的项目时,我已完成显示新菜单及其子菜单。 在此处输入图像描述

但是当用户单击子菜单时(对于这种情况,将创建一个方法库),我需要知道用户右键单击了哪个项目对象

我的问题是我该怎么做?请帮我。

谢谢大家,鹦鹉螺

4

2 回答 2

0

我认为 wiki 页面E4/EAS/Selection应该提供一种查询正确选择的方法。

在 Eclipse 3.x 中,org.eclipse.ui.ISelectionService 允许工作台部件查询活动选择,此外还可以附加侦听器以监视选择更改。

(见这个例子

在 e4 世界中,选择通过ESelectionService.

于 2012-09-02T08:13:02.567 回答
0

感谢 VonC,

现在我通过这样做得到了用户右键单击的资源对象:

IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    IWorkbenchPage page = window.getActivePage();
    CommonNavigator view = (CommonNavigator)page.findView("spe.ui.navigator.view");
    selection = (IStructuredSelection) view.getSite().getSelectionProvider().getSelection();

但我真的对这个解决方案并不完全满意。请注意,我在操作后打开了一个 INewWizard。在 INewWizard 我们有public void init(IWorkbench workbench, IStructuredSelection selection). 我真的很想使用这种方法,但我不知道如何使它起作用。

请有人帮助我。谢谢

于 2012-09-02T09:38:27.793 回答