2011-02-02 64 views
0

我想取消長期文本框按鍵事件,使用戶重新被按壓的字符不是在文本框中取消按鍵事件在GWT

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 
     } 
    } 
}); 

回答

3

進入如果您longBox_1是的私有成員你的類,或最終無功,取消事件的代碼是:

longBox_1.cancelKey(); 

否則,就可以把事件的源,如果你確信它對應文本框:

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

這裏是cancelKey商務部:

如果鍵盤目前事件正在 這個文本框處理,調用此方法 將抑制它。這允許 聽衆很容易地過濾鍵盤 輸入