Я пытаюсь добавить сочетания клавиш к меню GWT, то же как в большинстве приложений Windows (например, ALT + F, затем O-> активирует меню "File", затем "Откройте" MenuItem).
Я знаю, что это может конфликтовать с ярлыками браузера, таким образом, мне интересно способом отключения их также...
Из того, что я вижу, что Google имеет все виды ярлыков в их приложениях так, должен быть способ сделать это.
Спасибо!
Править
Благодаря ответу Igor я могу получить ввод с клавиатуры прежде чем быть использованным другими средствами управления.
То, что я не знаю, - то, как заставить MenuBar показать себя (как когда парение мыши). 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)
чтобы заставить его работать так, как вы задумали.