【问题标题】:SWT popup menu shortcut not workingSWT 弹出菜单快捷方式不起作用
【发布时间】:2013-08-15 22:01:15
【问题描述】:

我正在创建一个 Eclipse 插件,并为插件中的一个控件使用 SWT 弹出菜单(上下文菜单)。上下文菜单项有效,但我为该菜单项设置的加速器(快捷方式)无效且不起作用。我这样创建菜单项:

MenuItem parent = new Menu(getShell(), SWT.POP_UP);
MenuItem menuItem = new MenuItem(parent, SWT.PUSH);
menuItem.setText("Click me");
menuItem.setAccelerator( SWT.CTRL+ 'F');

请注意,POP_UP 菜单出现快捷方式问题,而不是 BAR 菜单项。

【问题讨论】:

    标签: java eclipse-plugin swt


    【解决方案1】:

    试试item.setAccelerator(SWT.MOD1 + 'A');

    MOD1, MOD2 .. MOD4 是键盘和/或鼠标事件掩码,指示在生成事件时在键盘上按下了 MOD1 键。

    更多参考 herethere

    编辑:

    如果您正在开发 Eclipse 插件,并且您将菜单放在 View 上,那么 Eclipse 平台快捷方式系统可能会干扰您的 SWT 组件的加速器。

    我建议您重构代码,以便使用 Eclipse 提供的快捷方式 extension

    【讨论】:

    • 是的。我正在使用 Eclipse 插件。我的插件有很多视图(比如 10-15),并且我对每个视图都有一些控件,这些控件提供了一些弹出菜单功能。如何为每个上下文菜单项注册快捷方式?
    猜你喜欢
    • 2017-12-07
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    • 2012-08-20
    • 1970-01-01
    • 2017-01-10
    • 1970-01-01
    相关资源
    最近更新 更多