2013-03-15 111 views
0

我有一个FocusPanel的小部件,我读了KeyPress事件。是否可以定义按下哪个功能键? 我试图使用event.getUnicodeCharCode(),但我只能扫描输入(code-13)Ctrl-Enter(10)功能键。如何阅读功能键?

  1. 那么有没有什么办法可以在Esc键按下时触发函数?

  2. 还有什么其他功能键和我可以如何扫描?

+0

如果您是指笔记本电脑上的功能键,功能键组合内置在电路板上。 – texasbruce 2013-03-15 19:07:55

+0

我的意思不仅是F1-F12,我的意思是Esc,Backspace,光标箭头。 – FFire 2013-03-15 19:51:35

回答

1

改为使用nativeKeyCode

这里是list of keyCodes

FocusPanel panel = new FocusPanel(); 
    panel.addKeyUpHandler(new KeyUpHandler() { 

     @Override 
     public void onKeyUp(KeyUpEvent event) { 
      if(event.getNativeEvent().getKeyCode() ==KeyFromLIst){ 
       //DO something 
       } 

     } 
    }); 

为了摆脱关闭浏览器不兼容喜欢keyup handler

+0

谢谢,在IE中我现在可以扫描Esc(27),但在Chrome中没有效果。 – FFire 2013-03-15 19:44:20

+0

更新了我的答案。 – 2013-03-15 19:57:49

+0

---完美! --- – FFire 2013-03-15 20:27:08