2016-05-23 70 views
0

我有一個包含可編輯的textinputcell, 看到下面的圖片是可編輯的textinputcell如何在細胞表驗證可編輯的文本

enter image description here 我想驗證列如果數學院則細胞表用戶只能輸入數字(整數單元格),而大學用戶名稱只能輸入字符串(文本單元格)。有沒有辦法在輸入文本之前進行驗證?

回答

0

編輯2:

我再次檢查我的回答我我是完全錯誤的細胞。 對於一個單元格來說,它的超級簡單:將CellPreviewHandler添加到您的表格中,該表格僅允許某個列上的數字。

table.addCellPreviewHandler(new Handler<String>() { 

     @Override 
     public void onCellPreview(CellPreviewEvent<String> event) { 
      if (event.isCellEditing()) { 
       int column = event.getColumn(); 
       String type = event.getNativeEvent().getType(); 
       if (column == 0 && BrowserEvents.KEYPRESS.equals(type)) { 
        if ((keyCode < 48 || keyCode > 57)) { 
         event.setCanceled(true); 
         event.getNativeEvent().stopPropagation(); 
         event.getNativeEvent().preventDefault(); 
        } 
       } 

      } 

     } 

    }); 
+0

感謝您的線索..沒有上述代碼無法正常工作..我添加fieldupdater獲取更新的值在同一時間,如果我添加onbrowserevent fieldupdater不工作 –