私はMultiSelectionModelでGWT DataGridを使用しています。GWT DataGrid:CheckboxCell選択と標準ラインモードの同時選択の使用
グリッドの項目の選択が
Bによって同時にCheckboxCell
、さらに有する
A)CheckboxColumnによって達成されなければならない)標準ラインモード選択モデル(残りの行をクリックしてください)。
CheckboxColumnを使用すると、ユーザーは異なるエントリを複数選択できるようにする必要があります。しかし、データグリッド線のどこかをクリックすると、1行選択ポリシーが実行されます。つまり、チェックボックスを使用する前に複数選択が行われた場合、この選択はリセットされ、クリックされた行のみその後選択する。
これは私が持っているものです。誰もCheckBoxモードとライン選択モードを同時に有効にする方法を知っていますか?
public class JobDataGrid extends DataGrid<Job>
{
private MultiSelectionModel<Job> selectionModel;
private Column<Job, Boolean> checkboxColumn;
private TextColumn<Job> idColumn;
private TextColumn<Job> titleColumn;
private TextColumn<Job> timestampColumn;
private TexTColumn<Job> ...
public JobDataGrid()
{
super();
checkboxColumn = new Column<Job, Boolean> (new CheckboxCell (true, false)) {
@Override
public Boolean getValue (Job job)
{
// Get the value from the selection model.
return selectionModel.isSelected (job);
}
};
checkboxColumn.setFieldUpdater (new FieldUpdater<Job, Boolean>() {
public void update (int index, Job job, Boolean value)
{
// Called when the user clicks on a checkbox.
selectionModel.setSelected (job, value);
}
});
// [...]
// [...]
// [...]
selectionModel = new MultiSelectionModel<Job>();
setSelectionModel (selectionModel);
// setKeyboardSelectionPolicy (KeyboardSelectionPolicy.DISABLED);
// [...]
// [...]
// [...]
}
}
私はすべての4つの亜種
new CheckboxCell (false, false);
new CheckboxCell (true, false);
new CheckboxCell (false, true);
new CheckboxCell (true, true);
を試してみましたが、それらのどれも私が必要なものまで見られませんでした。たぶん
createCustomManager(DefaultSelectionEventManager.EventTranslator<T> translator)
が役立つだろうと私はまた
setSelectionModel (selectionModel, DefaultSelectionEventManager.<Job> createCheckboxManager());
でプレイしましたか?
ありがとう トーマス
OKおかげで、どのようにcheckboxCellクリック用フィルタに-eventsとline-click-eventsはそこにありますか? –