GWT单元格表,如何清除EditTextCell的输入?

时间:2016-10-31 11:21:28

标签: gwt gwt-celltable

我有EditTextCell专栏。我有些条件我希望从该单元格中清除数据。

在方法更新中的FieldUpdater列中,我会进行一些检查。

如何在更新方法中清除此数据?

1 个答案:

答案 0 :(得分:2)

您需要clearViewDataredrawRow

final CellTable<MyTableType> table = new CellTable<MyTableType>();

final MyEditTextCell cell = new MyEditTextCell();

Column<MyTableType, String> column = new Column<MyTableType, String>(cell) {
    @Override
    public String getValue(MyTableType object) {
        if(object.getValue() == null)
            return "";
        else
            return object.getValue();
    }
};
column.setFieldUpdater(new FieldUpdater<MyTableType, String>() {
    @Override
    public void update(int index, MyTableType object, String value) {
        if(Window.confirm("Replace with \"" + value + "\"?"))
            object.setValue(value);
        else {
            cell.clearViewData(object);
            table.redrawRow(index);
        }
    }
});