java - 有没有办法在 GWT 中为 MenuBar/MenuItem 元素添加快捷键?

标签 java gwt keyboard-shortcuts

我正在尝试向 GWT 菜单添加键盘快捷键,与大多数 Windows 应用程序中相同(例如 ALT + F,然后 O -> 激活"file"菜单,然后“打开”菜单项)。

我知道它可能与浏览器快捷方式冲突,所以我也对禁用这些快捷方式感兴趣......

据我所知,谷歌在其应用程序中拥有各种快捷方式,因此,必须有一种方法可以做到这一点。

谢谢!

编辑

感谢 Igor 的回应,我能够在被其他控件使用之前捕获键盘输入。

我不知道如何使菜单栏显示自身(例如当鼠标悬停时)。 MenuBar 似乎没有方法 .open() :(

最佳答案

我实际上没有尝试过这个,但是 NativeEvent似乎正是您正在寻找的。您可以通过 Event.addNativePreviewHandler(Event.NativePreviewHandler) 访问它:

Event.addNativePreviewHandler(new Event.NativePreviewHandler() {
    @Override
    public void onPreviewNativeEvent(Event.NativePreviewEvent event) {
        nativeEvent nativeEvent = event.getNativeEvent();
        // Do all sort of cool stuff with nativeEvent
    }
});

引用:GWT Google Group thread

<小时/>

要以编程方式选择菜单项,请使用 MenuBar.selectItem(MenuItem item) - 您可能需要跟踪相关的 MenuItem。从选定的 MenuItem 中,您可以通过 MenuItem.getSubMenu() 访问其子菜单。等等...:)您可以使用自动打开设置(MenuBar.setAutoOpen(boolean autoOpen),让它按照您的设想工作。

关于java - 有没有办法在 GWT 中为 MenuBar/MenuItem 元素添加快捷键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3360182/

相关文章:

不同语言环境中的 Java 堆栈跟踪

java - Android本地单元测试问题[JUnit 4.12]

java - 如何使用键盘快捷键在 Eclipse 中编译我的代码

vim - 如何在 Vim 中复制整行?

java - 如何检索文件的修改日期?

java - GWT 中的动态表单

javascript - 使用 javascript 或 GWT 在悬停工具提示上

java - GWT DevMode 选项和概念

intellij-idea - 如何在IntelliJ IDEA中使用键盘显示错误弹出窗口

java - 如何从 OpenStreetMap 离线创建 map 图 block ,在 Android 上显示?