小编vin*_*raj的帖子

如何为jface treeviewer创建鼠标右键菜单

我创建了一个TreeViewer使用JFace,但现在我必须向节点添加一个右键单击侦听器.右键单击完成后,必须显示如下菜单:

  1. 做一点事
  2. 没做什么
  3. 删除

我试图这样做,但它抛出一个空指针异常.

MenuManager menuMgr = new MenuManager();
        menuMgr.setRemoveAllWhenShown(true);

        menuMgr.addMenuListener(new IMenuListener() {
            @Override
            public void menuAboutToShow(IMenuManager menuManager) {

                IContributionManager menu = null;
                MenuItem[] items = (MenuItem[]) menu.getItems();
                for (int i = 0; i < items.length; i++)
                    items[i].dispose();

                MenuItem itemCollectionFolder = new MenuItem((Menu) menu, SWT.NONE);
                itemCollectionFolder.setText("Add Something" );

                MenuItem itemNewTestCase = new MenuItem((Menu) menu, SWT.NONE);
                itemNewTestCase.setText("Do Nothing" );

            }
        });

        Control tree = treeViewer.getControl();

        Menu menu = menuMgr.createContextMenu(tree);

        tree.setMenu(menu);
Run Code Online (Sandbox Code Playgroud)

java jface treeviewer e4

3
推荐指数
1
解决办法
3182
查看次数

标签 统计

e4 ×1

java ×1

jface ×1

treeviewer ×1