GWT(event.getCharCode)在IE和Firefox中的行为不同

GWT(event.getCharCode)在IE和Firefox中的行为不同,gwt,gwt2,gwt-2.2,Gwt,Gwt2,Gwt 2.2,我正在浏览GWT网站上可用的StockWatcher应用程序,并按照步骤4:管理客户机上的事件中的描述测试该应用程序 下面这段代码在Firefox和IE7中的行为不同。在IE7中,这很有效,也就是说,如果我在文本字段中输入一些垃圾字符并点击enter“event.getCharCode()==KeyCodes.KEY\u enter”行将成功执行,并且我可以看到一条警报消息。但是,如果我使用Firefox,这一行就不起作用了 当我使用Firefox并按Enter键时,event.getCharC

我正在浏览GWT网站上可用的StockWatcher应用程序,并按照步骤4:管理客户机上的事件中的描述测试该应用程序

下面这段代码在Firefox和IE7中的行为不同。在IE7中,这很有效,也就是说,如果我在文本字段中输入一些垃圾字符并点击enter“
event.getCharCode()==KeyCodes.KEY\u enter
”行将成功执行,并且我可以看到一条警报消息。但是,如果我使用Firefox,这一行就不起作用了

当我使用Firefox并按Enter键时,event.getCharCode返回一些垃圾字符。我做错了什么?或者这是预期的行为

newSymbolTextBox.addKeyPressHandler(new KeyPressHandler() {
          public void onKeyPress(KeyPressEvent event) {
            if (event.getCharCode() == KeyCodes.KEY_ENTER) {
              addStock();
            }
          }
        });

使用
KeyUpHandler
而不是
KeyPressHandler
来捕获非字符键(如回车、转义等)。调用
KeyUpEvent#getNativeKeyCode()
获取密钥代码。

如果我用KeyUphandler替换KeyPressHandler,在使用KeyUphandler的情况下如何检索字符代码?KeyUpEvent没有getCharCode()。好的,我是通过使用event.getNativeKeyCode()方法获取与事件关联的字符代码来实现的。然而,为什么KeyUpHandler在这种情况下工作,而不是KeyPressHandler?KeyPress用于导致实际字符输入的按键。KeyUp和KeyDown还包括非打印键。