2

我一直在编写一个基于 GWT 2.3 的 Web 应用程序,同时我还编写了自己的撤消和重做功能。当用户按下 ctr-z 或 ctr-y 时,撤消或重做最后的更改。他们是一种有效检测页面上任何地方发生的 ctr-z 和 ctr-y 按键事件并导致它们运行我自己的功能的方法。

4

1 回答 1

3

添加一个NativePreviewHandler

Event.addNativePreviewHandler(new NativePreviewHandler() {
  @Override
  public void onPreviewNativeEvent(NativePreviewEvent event) {
    if (event.getTypeInt() == Event.ONKEYDOWN) {
      NativeEvent ne = event.getNativeEvent();

      if (ne.getCtrlKey() && ne.getKeyCode() == 'Z') {
        event.cancel();
        // Handle undo
      } else if (ne.getCtrlKey() && ne.getKeyCode() == 'Y') {
        event.cancel();
        // Handle redo
      }
    }
  }
});
于 2011-10-27T16:31:04.860 回答