Java swt TreeView 弹出菜单

标签 java popup swt

你好,

目前我有一个工作弹出菜单,当我点击 TreeView 项目时会出现。 但我想为不同的 TreeView 条目显示不同的弹出窗口。我不知道该怎么做......

这是我创建菜单的代码:

 MenuManager menuMgr = new MenuManager("#PopupMenu"); 
 menuMgr.setRemoveAllWhenShown(true);
 menuMgr.addMenuListener(new IMenuListener() {
     @Override
     public void menuAboutToShow(IMenuManager manager) {
         Action action = new Action() {
      public void run() {
                // So something
      }
  };
  action.setText("Set as working file");
  manager.add(action);
 }

 });

 Menu menu = menuMgr.createContextMenu(getTree());
 getTree().setMenu(menu);

最佳答案

您应该适本地在树上使用 MouseListener:

final Tree tree = new Tree(parent, ...);
tree.addMouseListener(new MouseAdapter() {
    @override
    public void mouseDown(MouseEvent me) {
        if(tree.getSelection() instanceof MySpecificTreeNode) {
            // create menu...
        }
    }
});

关于Java swt TreeView 弹出菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3005828/

相关文章:

java - 将 GUI 置于单独的进程中

java - 更改我的 Android 项目的包名称

r - 尽管有弹出窗口,但仍通过 R 从 Internet 下载文件

Java:如何在父窗口下打开新的jframe

java - 将图像复制到剪贴板在 Linux 上不起作用(Java AWT 和 SWT)

java - 当我拥有所有 Joda DateTime 对象时,如何使用 SWT 日历?

java - spring应用索引的使用

java - 我怎样才能增强这个for循环

java - 在类中使用私有(private)变量或公共(public)方法哪个更好?

javascript - DHTML 弹出窗口