我一直在编写一个基于GWT 2.3的Web应用程序,随之而来的是我编写了自己的undo和redo函数。当用户按下ctr-z或ctr-y时,撤消或重做最后的更改。它们是一种有效检测页面上任何位置发生的ctr-z和ctr-y按键事件并使它们运行我自己的函数的方法。
答案 0 :(得分:3)
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
}
}
}
});