Я создал NatTable с RowSelectionModel и RowSelectionProvider:RowSelectionModel показывает весь заголовок ячейку столбца
dataProvider = new ListDataProvider<>(rowData, columnAccessor);
bodyDataLayer = new DataLayer(dataProvider);
glazedListEventsLayer = new GlazedListsEventLayer<>(bodyDataLayer, rowData);
columnReorderLayer = new ColumnReorderLayer(glazedListEventsLayer);
columnHideShowLayer = new ColumnHideShowLayer(columnReorderLayer);
selectionLayer = new SelectionLayer(columnHideShowLayer);
ViewportLayer viewportLayer = new ViewportLayer(selectionLayer);
selectionProvider = new RowSelectionProvider<>(selectionLayer, dataProvider, true);
selectionLayer.setSelectionModel(new RowSelectionModel<>(selectionLayer, dataProvider, idAccessor, false));
В принципе, таблица делает то, что я хочу, чтобы это сделать. Существует лишь одно исключение:
В таблице выглядит следующим образом:
Как и предполагалось, таблица показывает строку, как выбрано (1). Также он выделяет фактически выбранную ячейку (2), что очень приятно. Но он отображает весь заголовок столбца таблицы как выбранный (3). Я не хочу этого. Я хочу либо не выделять элементы заголовка вообще, либо (даже лучше :) Я бы хотел выделить только ячейку заголовка столбца ячейки-указателя (2).
Я думал, что, возможно, есть ярлык конфигурации, прикрепленный к ячейкам заголовка столбца, что приводит к выделению (так что я мог бы просто изменить стиль этого ярлыка, чтобы избавиться от выделения), но COLUMN_HEADER является единственным ярлык конфигурации, я могу видеть при отладке.
Итак, я немного застрял. Что заставляет ячейки заголовка выделяться и как я могу изменить это поведение? Можно ли выделить только заголовок ячейки курсора (как это делается с ячейкой курсора выбранной строки (2))?