Как работают CellEditors?
У меня проблемы с пониманием работы CellEditors в Java.
У меня есть JTable с моделью (расширяет AbstractTableModel). JTable имеет свой CellRenderer и CellEditor. CellEditor переопределяет только isCellEditable() (добавлено одно условие).
Как изменения, которые я сделал в одной ячейке, соответствуют модели? Должна ли модель реализовывать CellEditorListener и реагировать на stopEditing()?
Я прочитал, что изменения будут автоматически сохранены в модели. Это правда? Если да, то как это работает? Должен ли я реагировать на tableChanged() тогда?
Пожалуйста, объясните, каким образом изменились данные и на каких этапах я должен что-то сделать.
Большое спасибо!
1 ответ
Изменения применяются к модели через TableModel
"s.setValueAt()
метод. JTable сама заботится о получении значения, возвращаемого CellEditor, и передаче его в TableModel.