GWT CELLTABLE Как восстановить старое значение в EditableTextCell?
Я хочу использовать editableNumbercell, например, intger, decimal и т. Д. Но такого виджета gwt нет, поэтому я использую редактируемую текстовую ячейку и проверяю числа, когда пользователь обновляет значение в ячейке.
Как избежать редактирования ячейки при сбое проверки.
если проверка не удалась, то значение ячейки editable text восстанавливается до старого значения. Как это сделать?
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 ответ
Решение
Вы можете сделать это так:
// очистить неверные данные cell.clearViewData(KEY_PROVIDER.getKey(object)); cellTable.redraw();
Где ячейка - это TextEditCell, который вы используете для этого столбца.
Это полезно для меня.