GWT CellTable выбор и один клик на CheckBoxCell

У меня есть CellTable, который работает с SingleSelectionModel, чтобы сделать одиночный выбор и показать некоторую информацию на панели подробностей. Также я получил столбец CheckBoxCell в эту CellTable, который работает с другой MultipleSelectionModel для выполнения операции массового удаления.

Когда я пытаюсь установить флажок в столбце CheckBoxCell, GWT выбирает строку, а после второго нажатия флажка он меняет состояние флажка. Таким образом, мы должны сделать два клика, но мне нужно сделать это (изменить состояние флажка) одним щелчком мыши.

Я пробовал разные способы исправить это:

Change dependsOnSelection and handlesSelection parameters into CheckboxCell Change SelectionEventManager in CellTable (DefaultSelectionEventManager.createCheckboxManager(), DefaultSelectionEventManager.createCustomManager)

Но это не работает.

Я обнаружил похожие проблемы в Интернете, но все они работают с одной MultipleSelectionModel. Это не то, что я хочу, потому что есть панель с подробностями (так что я могу сделать только один выбор).

Может ли кто-нибудь помочь мне выяснить, как решить эту проблему?

UPD: Я только что удалил SingleSelectionModel и перепроектировал пользовательский интерфейс для работы с MultipleSelectionModel. Это GWT-ад ...

Ответы на вопрос(1)

MultiSelectionModel какCellTableмодель выбора, чтобы флажки работали как положено (с обоимиdependsOnSelection а такжеhandlesSelection установлен вtrue), а для функции master-detail используйтеCellPreviewEvent.Handler (или жеDefaultSelectionEventManager#createCustomManager), а такжеRowStyles а такжеgetRowElement+addStyleName/removeStyleName для рендеринга (RowStyles когдаCellTable визуализирует строки, затемgetRowElement динамически обновлять стиль).

 16 июл. 2012 г., 12:10
Спасибо, это очень хорошо работает для меня, используя CellPreviewEvent и тестируя тип события:if (event.getColumn() == 1 && event.getNativeEvent().getType().equals("click")) {}
 Vladislav Bauer19 июн. 2012 г., 10:07
Я заново подписал интерфейс для работы только с MultiSelectionModel.
 Vladislav Bauer17 июн. 2012 г., 17:48
На самом деле я уже пробовал этот способ, но он не дал мне необходимого поведения. Но спасибо за ответ, я попробую еще раз в понедельник.

Ваш ответ на вопрос