我在理解CellEditors如何在Java中工作时遇到了问题。
我有一个带模型的JTable(扩展AbstractTableModel)。 JTable有它的CellRenderer和CellEditor。 CellEditor仅覆盖 的isCellEditable() (添加了一个条件)。
我在一个Cell中所做的更改如何进入模型? 模型是否必须实现CellEditorListener并做出反应 stopEditing方法()?
我已经读过,更改会自动存储在模型中。 真的吗?如果是,它是如何工作的?我必须做出反应吗? tableChanged() 然后?
请解释数据的方式,这些数据已经改变,以及我必须采取哪些步骤。
非常感谢!
答案 0 :(得分:3)
通过TableModel
's .setValueAt()
方法将更改应用于模型。 JTable本身负责接收CellEditor返回的值并将其传递给TableModel。