GWT CellTable: выбор одного флажка выбирает каждый флажок / строку в таблице - PullRequest
3 голосов
/ 14 июня 2019

У меня сейчас очень простой CellTable в GWT, и я использую большую часть кода, показанного здесь .

Однако, когда я переключаю флажок, каждая отдельная строка подсвечивается.

Предварительный просмотр: gfycat

Я пробовал до сих пор:

  • Multi- / SingleSelectionMode: (я хочу получить только одну строку, поэтому я бы предпочел SingleSelectionMode)

  • CheckBoxCell (true, true): -> Это именно то, как я хочу, чтобы CellTable выглядел, однако с этими параметрами я не могу получить объект с помощью "getSelectedObject ()". Другие изменения параметров (false, false / true, false) также не работают

    CellTable<Article> ArticleCt = new CellTable<Article>(KEY_PROVIDER); 

    ListHandler<Article> sortHandler = new ListHandler<Article>(Articles);
    ArticleCt.addColumnSortHandler(sortHandler);

    final MultiSelectionModel<Article> selectionModel1 = new MultiSelectionModel<Article>(KEY_PROVIDER);

    ArticleCt.setSelectionModel(selectionModel1, DefaultSelectionEventManager.<Article> createCheckboxManager());

    Column<Article, Boolean> checkColumn = new Column<Article, Boolean>(
                  new CheckboxCell(true, false)) {

      public Boolean getValue(Article object) {

      return selectionModel1.isSelected(object);
    }
    };

Я хочу, чтобы была выбрана только строка с установленным флажком, чтобы я мог выбрать строку / объект в сетчатой ​​области с помощью selectionMode.getSelectedObject() или selectionMode.getSelectedSet().

Однако каждая строка выделяется.

1 Ответ

1 голос
/ 14 июня 2019

Ваш ключевой поставщик, KEY_PROVIDER в приведенном выше вопросе, должен предоставить уникальные и непротиворечивые ключи для каждой строки. Например, каждая строка может иметь поле «ID».

Если ключ имеет более одной строки, то выбор одной из них, по-видимому, совпадает с моделью выбора при выборе обеих. Если ключ строки не согласован, то при выборе строки его нельзя будет запросить позже, поскольку его ключ изменился.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...