我正在使用以下构造函数在可编辑数据网格中创建复选框单元格。
CheckboxCell(false, true)
当我使用它并单击行中的任何位置时,选择更改事件不会触发,并且我正在使用单选模型。
当我使用时,
CheckboxCell();
选择更改事件在行上触发,但是, 1)我们点击两次来选中或取消选中单元格。 2)如果我们选中或取消选中复选框单元格,只要我单击任意位置,该值就会恢复。
我正在尝试找出解决方案,但尚未成功。任何帮助,将不胜感激。
正在使用 GWT 2.4.0
最佳答案
问题是由于选择造成的,如果可能的话不要使用选择模型。并为复选框列添加字段更新程序。我用过这个:
Column< GridReportFields, Boolean > cb = new Column< GridReportFields, Boolean >(new CheckboxCell() ) {
@Override
public Boolean getValue(GridReportFields object) {
// TODO Auto-generated method stub
return object.getCheckb();
}
};
cb.setFieldUpdater(new FieldUpdater<GridReportFields, Boolean>() {
@Override
public void update(int index, GridReportFields object, Boolean value) {
// TODO Auto-generated method stub
object.setCheckb(value);
dataGrid.redraw();
}
});
这里 gridReport Field 是我的模型类。 setCheckb 是保存复选框值的 bool 变量的 setter 。
关于GWT:CheckBoxCell 和选择更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10510785/