Таблица JFace деактивирует ячейки для определенных строк
Есть ли способы включить / отключить ячейки в JFace TableViewer? У меня есть поле со списком, и на основании набора данных в этом окне пользователь должен иметь возможность изменять данные в определенной ячейке или нет. Для каждого столбца есть TextCellEditor, который необходимо включить / отключить.
Я не могу придумать какой-либо хороший способ достичь этого, может быть, вы делаете?
1 ответ
Предполагая, что вы используете EditingSupport
класс для редактирования вашей реализации canEdit
Метод определяет, можно ли редактировать ячейку.
Если вы используете поставщиков меток столбцов на основе ColumnLabelProvider
Вы можете переопределить getForeground
а также getBackground
методы, чтобы установить цвета ячейки соответственно.
Вам может понадобиться вызвать один из просмотрщиков таблиц refresh
или же update
методы, если вы хотите изменить состояние редактирования или цвет ячейки.