Предполагая, что вам нужно привязать флажок к «выбору» и легко выбрать группу элементов программно (тонкость: выберите элементы, что приведет к тому, что флажок будет установлен вместо флажков), вы будете использовать MultiSelectionModel
.
Пример кода вы найдете в http://gwt.google.com/samples/Showcase/Showcase.html#!CwCellTable,, а именно:
final MultiSelectionModel<ContactInfo> selectionModel = new MultiSelectionModel<ContactInfo>(
ContactDatabase.ContactInfo.KEY_PROVIDER);
cellTable.setSelectionModel(selectionModel,
DefaultSelectionEventManager.<ContactInfo> createCheckboxManager());
…
Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(
new CheckboxCell(true, false)) {
@Override
public Boolean getValue(ContactInfo object) {
// Get the value from the selection model.
return selectionModel.isSelected(object);
}
};
cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>"));
cellTable.setColumnWidth(checkColumn, 40, Unit.PX);
Затем, чтобы выбрать элемент (и его флажок будет установлен автоматически), выВы просто сделаете:
selectionModel.setSelected(item, true);
, и вы можете аналогичным образом получить набор всех выбранных элементов с помощью selectionModel.getSelectedSet()
.