GWT CellList单击以切换选择(多选)

标签 gwt multi-select gwt-2.2-celltable gwt-2.4

我想设置一个CellList,以便单击一行将切换选择。这样一来,无需按住ctrl键就可以选择多行。

我需要进行哪些更改才能使其正常运行?

class ToggleEventTranslator<T> implements DefaultSelectionEventManager.EventTranslator<T> {
    @Override
    public boolean clearCurrentSelection(final CellPreviewEvent<T> event) {
        return false;
    }

    @Override
    public SelectAction translateSelectionEvent(final CellPreviewEvent<T> event) {
        return SelectAction.TOGGLE;
    }

}


MultiSelectionModel<ObjProxy> multiSelectionModel = new MultiSelectionModel<ObjProxy>();

    ocjCellList.setSelectionModel(multiSelectionModel, DefaultSelectionEventManager
            .<ObjProxy> createCustomManager(new ToggleEventTranslator<ObjProxy>()));

最佳答案

list.addCellPreviewHandler(new Handler<T>() {

        @Override
        public void onCellPreview(final CellPreviewEvent<T> event) {

            if (BrowserEvents.CLICK.equals(event.getNativeEvent().getType())) {

                final T value = event.getValue();
                final Boolean state = !event.getDisplay().getSelectionModel().isSelected(value);
                event.getDisplay().getSelectionModel().setSelected(value, state);
                event.setCanceled(true);
            }
        }
});


private final MultiSelectionModel<T> selectModel = new MultiSelectionModel<T>();

final Handler<T> selectionEventManager = DefaultSelectionEventManager.createCheckboxManager();
list.setSelectionModel(selectModel, selectionEventManager);

关于GWT CellList单击以切换选择(多选),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7903807/

相关文章:

带有 ImageResourceCell 的 GWT CellTable

css - 使用带有 CssResource 和 @if 的 GWT 的移动设备的不同字体大小

html - GWT 中的数据 URI

eclipse - 安装以前版本的 GPE?

WPF 数据网格——行的编程选择似乎破坏了多选(特别是 shift-click 多选)

java - 在 GWT 中将 clickHandler 添加到 CellTable 中的行?

java - UiBinder 小部件中的自定义属性

javascript - Angular JS : "Select All" options of "multi-select select box"

具有多选的 WPF TreeView

gwt - 如何在 CellTable GWT 中设置整个列的背景颜色