SWT Jface TableViewer получить строку по данным
Я успешно сопоставил массив объектов в таблицу, используя TableViewer
, я использовал ArrayContentProvider
а потом TableViewer.setInput
сопоставить мой массив.
Теперь мне нужно изменить цвет фона нескольких строк в таблице, чтобы визуально выделить их. Каждая строка соответствует объекту в массиве. Но я не могу понять, как получить ссылку на строку (т.е. TableItem
) дан объект сопоставленного типа. Я могу получить объект, заданный строкой с TableItem.getData()
но то, что я действительно хочу сделать, это получить TableItem
учитывая его данные.
1 ответ
Вы можете просто вызвать защищенный метод TableViewer.doFindItem
используя отражение.
Или лучше сделайте так, чтобы ваш поставщик этикеток реализовал ITableColorProvider
и TableViewer
будет использовать правильный цвет автоматически.