4

当在 CellTable 中选择一行时,我想完全查看更新。如何才能做到这一点?在下面的测试用例中,使用NoSelectionModel,视图仍然更新:单击一行会更改该行的背景和边框颜色,直到单击另一行。

    CellTable<String> table = new CellTable<String>();

    TextColumn<String> column = new TextColumn<String>()
    {
        @Override
        public String getValue(String string)
        {
            return string;
        }
    };

    table.addColumn(column);

    List<String> sampleData = Arrays.asList("foo", "bar", "baz");

    table.setRowData(sampleData);

    final NoSelectionModel<String> selectionModel = new NoSelectionModel<String>();
    table.setSelectionModel(selectionModel);

    RootPanel.get().add(table);

我还尝试使用空的覆盖方法对 SingleSelectionModel 进行子类化,但没有成功。

我可以通过为选定的行提供空的CSS 样式来伪造我想要的行为,但这种方法似乎有点 hack-ish。

4

1 回答 1

13

您看到的是键盘选择突出显示(当您不使用鼠标与表格交互时非常有用)。
您可以使用禁用它setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED)

于 2012-05-05T00:40:05.537 回答