2015-03-02 45 views
0

我正在RCP应用程序中创建树结构。我想能够创建一个弹出式菜单。我已经能够创建一个虚拟菜单项。在e4中添加一个弹出菜单到树Rcp

final Menu treeMenu = new Menu(check.getShell(), SWT.POP_UP); 
     MenuItem item = new MenuItem(treeMenu, SWT.PUSH); 
     item.setText("Open"); 
     item.addSelectionListener(new SelectionListener() { 

      @Override 
      public void widgetSelected(SelectionEvent e) { 
       System.out.println("CAme in Open"); 
      } 

      @Override 
      public void widgetDefaultSelected(SelectionEvent e) { 
       // TODO Auto-generated method stub 

      } 
     }); 

     check.setMenu(treeMenu); 

但是这个菜单不能识别节点的细节。我想要一些可以获取关于我们已经打开上下文菜单的节点的信息。

回答

0

如果您使用的是TreeViewer(或TableViewer)只是得到当前的选择:

IStructuredSelection sel = (IStructuredSelection)treeViewer.getSelection(); 

Object selectedElement = sel.getFirstElement(); 

对于Tree使用:

TreeItem [] selectedItems = tree.getSelection(); 
+0

可我们的widgetselected方法里面直接添加呢? – Praveen 2015-03-02 08:12:26

+0

是的。显然你必须使treeViewer可用 – 2015-03-02 08:15:11

+0

这是我会尝试的东西,但如果我们正在使用树,而不是树视图 – Praveen 2015-03-02 08:17:54

相关问题