GWT CELLTABLE如何在EditableTextCell中恢复旧值?

时间:2011-08-01 12:15:42

标签: java gwt cell gwt-2.2-celltable

我想使用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

            }

        }
    });

对此事项的任何帮助或指导将不胜感激。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

//清除不正确的数据 cell.clearViewData(KEY_PROVIDER.getKey(对象)); cellTable.redraw();

其中cell是您用于该列的TextEditCell。

对我有用。