取消GWT中的Keypress事件

时间:2011-02-02 08:01:33

标签: java gwt user-interface keypress

我想取消长文本框的按键事件,以便用户新按下的字符不会输入文本框

longBox_1.addKeyPressHandler(new KeyPressHandler(){
    @Override
    public void onKeyPress(KeyPressEvent event) {
        String Valid="1234567890";
        if (!Valid.contains(String.valueOf(event.getCharCode()))) {
            // the code to cancel the event to be placed here
        }
    }
});

1 个答案:

答案 0 :(得分:3)

如果您的longBox_1是您班级的私人成员或最终版本,则取消该活动的代码为:

longBox_1.cancelKey();

否则,如果您确定它与TextBox对应,则可以转换事件源:

((TextBox)event.getSource()).cancelKey();

这是cancelKey的文档:

  

如果当前正在进行键盘事件   在这个文本框上处理,调用它   方法会抑制它。这允许   听众轻松过滤键盘   输入