我有这个代码:
newSymbolTextBox.addKeyPressHandler(new KeyPressHandler() {
public void onKeyPress(KeyPressEvent event) {
System.out.println("foo =" + KeyCodes.KEY_ENTER);
System.out.println("bar =" + event.getCharCode());
}
});
Run Code Online (Sandbox Code Playgroud)
当我按下ENTER时,我得到这个输出:
foo =13
bar =
Run Code Online (Sandbox Code Playgroud)
之后我期待一个价值bar =.任何的想法?
事实上,价值就在那里.你没有看到任何东西的原因是因为这个角色是回车.我相信回车只会移动下一行(你可以谷歌它的确切功能).如果你谷歌"ascii表"你会看到你得到的13 KeyCodes.KEY_ENTER对应CR,回车符.
您需要使用event.getNativeEvent().getKeyCode()或切换到KeyDownHandler.
newSymbolTextBox.addKeyPressHandler(new KeyDownHandler() {
public void onKeyDown(KeyDownEvent event) {
System.out.println("foo =" + KeyCodes.KEY_ENTER);
System.out.println("bar =" + event.getNativeKeyCode());
}
});
Run Code Online (Sandbox Code Playgroud)
请参阅http://code.google.com/p/google-web-toolkit/issues/detail?id=5558
| 归档时间: |
|
| 查看次数: |
65391 次 |
| 最近记录: |