我想使用editableNumbercell,如intger,decimal等。 但是没有这样的gwt小部件,所以我使用可编辑的文本单元格,并在用户更新单元格中的值时使用数字验证。
验证失败时如何避免单元格编辑。
如果验证失败,则editabletext单元格值恢复为旧值。如何做?
intgerColumn.setFieldUpdater(new FieldUpdater<RecordInfo, String>() {
public void update(int index, RecordInfo object, String value) {
// Called when the user changes the value.
if(value.matches("(-)?(\\d){1,8}")){
object.setColumnInRecordEdited(true);
object.setValue(value);
RecordData.get().refreshDisplays();
}else{
Window.alert("Specify valid integer value for parameter");
// How to rest old value here? currently update value set to cell
}
}
});
对此事项的任何帮助或指导将不胜感激。
答案 0 :(得分:0)
你可以这样做:
//清除不正确的数据 cell.clearViewData(KEY_PROVIDER.getKey(对象)); cellTable.redraw();
其中cell是您用于该列的TextEditCell。
对我有用。