GWT:在某些情况下,多选模型不会更新celltable状态

GWT:在某些情况下,多选模型不会更新celltable状态,gwt,multipleselection,Gwt,Multipleselection,我在CellTable中使用GWT MultiSelectionModel,其中一列中有一个复选框,另一列中有一个小部件。我已经添加了处理程序来根据用户点击更新选择状态。如果用户在选择单元格时单击任一列的任何部分,则状态将正确更新,单元格将从浅蓝色变为白色。但是,如果用户单击复选框并选中单元格,则复选框将取消选中,但单元格仍为蓝色。更奇怪的是:如果在执行状态更新代码之前有几个断点,则不会发生此问题 在所有其他情况下,单元格状态和复选框状态都会正确更新。请注意,我没有使用provideskys接口

我在CellTable中使用GWT MultiSelectionModel,其中一列中有一个复选框,另一列中有一个小部件。我已经添加了处理程序来根据用户点击更新选择状态。如果用户在选择单元格时单击任一列的任何部分,则状态将正确更新,单元格将从浅蓝色变为白色。但是,如果用户单击复选框并选中单元格,则复选框将取消选中,但单元格仍为蓝色。更奇怪的是:如果在执行状态更新代码之前有几个断点,则不会发生此问题

在所有其他情况下,单元格状态和复选框状态都会正确更新。请注意,我没有使用provideskys接口,因为对象没有更改


有人能帮我吗?谢谢你的帮助。

我在使用MultiSelectionModel时遇到了几乎相同的问题。我的演练是将复选框的列视为一个特殊的列,然后手动处理它。说:

myDataGrid.addCellPreviewHandler(
  @Override
  public void onCellPreview(final CellPreviewEvent<MyCellData> event){
    if("click".equals(event.getNativeEvent().getType()) && 0 != event.getColumn()){
      doWhatYouWant();
    }
  }
)
myDataGrid.addCellPreviewHandler(
@凌驾
public void onCellPreview(最终CellPreviewEvent事件){
如果(“单击“.equals(event.getNativeEvent().getType())&&0!=event.getColumn()){
你想要什么;
}
}
)

您是否尝试过对复选框列,特别是构造函数使用
CheckBoxCell
(通过将
true
传递给两个参数)