GWT cell table,如何清除EditTextCell的输入?
GWT cell table, how to clear input of EditTextCell?
我有包含 EditTextCell 的列。在某些情况下,我想清除该单元格中的数据。
在方法更新的 FieldUpdater
列中,我做了一些检查。
如何在更新方法中清除这些数据?
您需要 clearViewData
和 redrawRow
:
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);
}
}
});
我有包含 EditTextCell 的列。在某些情况下,我想清除该单元格中的数据。
在方法更新的 FieldUpdater
列中,我做了一些检查。
如何在更新方法中清除这些数据?
您需要 clearViewData
和 redrawRow
:
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);
}
}
});