【发布时间】:2013-10-14 09:01:00
【问题描述】:
我正在使用 GXT 3.0 并且有一个每行包含多个复选框的网格。这些复选框反映了我的行数据的某些属性,并且签入/取消选中并不意味着选择/取消选择特定行。如何为每个复选框添加一个侦听器并在单击它时执行一些操作?
【问题讨论】:
标签: checkbox grid listener cell gxt
我正在使用 GXT 3.0 并且有一个每行包含多个复选框的网格。这些复选框反映了我的行数据的某些属性,并且签入/取消选中并不意味着选择/取消选择特定行。如何为每个复选框添加一个侦听器并在单击它时执行一些操作?
【问题讨论】:
标签: checkbox grid listener cell gxt
我重写了 handlesSelection() 方法来捕获选中/取消选中事件
CheckBoxCell checkCol = new CheckBoxCell() {
@Override
public boolean handlesSelection() {
//TODO:
return true;
}
};
【讨论】:
为每个复选框添加一些 CheckBoxSelectionModel
IdentityValueProvider<Stock> identity = new IdentityValueProvider<Stock>();
SpecialRowClickCheckBoxSelectionModel<Stock> sm =
new SpecialRowClickCheckBoxSelectionModel<Stock>(identity);
public class SpecialRowClickCheckBoxSelectionModel<M>
extends CheckBoxSelectionModel<M> {
public SpecialRowClickCheckBoxSelectionModel(
IdentityValueProvider<M> identity) {
super(identity);
}
@Override
protected void handleRowClick(RowClickEvent event) {
M model = listStore.get(event.getRowIndex());
//TODO
}
}
【讨论】: