GWT中的记忆法

GWT中的记忆法,gwt,gwt2,Gwt,Gwt2,我想用GWT创建as。但我不知道怎么弄清楚。我在谷歌上搜索过它,但我不喜欢它的任何示例代码。我想在我的按钮上绑定一些键盘快捷键。我怎样才能做到呢?任何建议都将不胜感激 通常,您可以使用NativePreviewHandler处理全局键盘快捷键。你可以在这里看到这样一个例子: NativePreviewHandler nativePreviewHandler = new NativePreviewHandler() { @Override public void onPrevie

我想用GWT创建as。但我不知道怎么弄清楚。我在谷歌上搜索过它,但我不喜欢它的任何示例代码。我想在我的按钮上绑定一些键盘快捷键。我怎样才能做到呢?任何建议都将不胜感激

通常,您可以使用NativePreviewHandler处理全局键盘快捷键。你可以在这里看到这样一个例子:

NativePreviewHandler nativePreviewHandler = new NativePreviewHandler() {

    @Override
    public void onPreviewNativeEvent(NativePreviewEvent event) {
        if (event.getTypeInt() != Event.ONKEYDOWN) {
            return;
        }
        final NativeEvent nativeEvent = event.getNativeEvent();
        final boolean altKey = nativeEvent.getAltKey();
        final boolean ctrlKey = nativeEvent.getCtrlKey();
        if(altKey && ctrlKey && nativeEvent.getKeyCode() == 'A') {
            // Do Something
        }
    }
};
Event.addNativePreviewHandler(nativePreviewHandler);

但就我所知,GWT中没有通用的方法来处理绑定到按钮/菜单以及键盘快捷键的某种操作。您必须自己实现这样一个抽象。

我希望这段代码对您有所帮助。这里我们在document元素上添加了一个key-down处理程序

RootPanel.get().addDomHandler(new KeyDownHandler() {

        @Override
        public void onKeyDown(KeyDownEvent event) {
            if (event.isControlKeyDown()) {
                char ch = (char) event.getNativeKeyCode();
                if (ch == 's' || ch == 'S') {
                    // do operation for Ctrl+S
                } else if (ch == 'c' || ch == 'C') {
                    // do operation for Ctrl+C
                }
                // add more or use switch case
            }
        }
    }, KeyDownEvent.getType());

你的代码很简单,对我很有用。谢谢在RootPanel中绑定keydown事件是一个非常好的主意。我真的很感激。