使用Menu(Control parent)构造函数在eclipse中访问Popup菜单

时间:2013-05-06 10:28:42

标签: java eclipse menu popup eclipse-rcp

我有控制权,让我们说ImageHyperlink imageHyperlink我在其上创建了弹出式菜单:Menu menu = new Menu(imageHyperlink); 假设我有权访问imageHyperlink,有没有办法以编程方式访问该菜单(及其菜单项)? 感谢

1 个答案:

答案 0 :(得分:0)

假设构造的Menu与构造函数中指定的Control有任何关联,这是一个常见的错误!有问题的构造函数定义为

public Menu (Control parent) {
    this (checkNull (parent).menuShell (), SWT.POP_UP);
}

所以换句话说:菜单与控件的Shell相关联,而不是控件本身。

Menu充当特定Control的弹出菜单之前,菜单必须明确设置为控件的菜单

imageHyperlink.setMenu(menu);

完成此操作后,始终可以使用imageHyperlink.getMenu()检索菜单。