下面是我的 table 的图片。 Unit
和 Description
列具有 ComboBox
编辑器。我为 Description
列添加了一个项目监听器,当我选择不同的项目时,Unit
列的项目也会更改。
我的问题是,在某些情况下,对于表的其他行,它会有不同的描述。与前一行相比,该行的 Unit
列也将具有不同的项目。
当 B 列的 ComboBox
发生更改(仅针对该行)时,如何填充 A 列的 ComboBox
?
最佳答案
首先查看 Concepts: Editors and Renderers和 Using Other Editors
一般的答案是,你需要两个编辑器,当TableCellEditor#getTableCellEditorComponent
时被调用时,您将使用 JTable
引用和 row
/column
属性来查找列 B
的当前值code> 并更新通过该方法返回的编辑器的值
现在,如果您想根据 B
列的更改来更改 A
列的值,则需要查看 TableModel#setValueAt
方法,当任何单元格的值发生更改时都会调用该方法,并根据 B
A
关于java - JTable 中 ComboBox 的选择监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34835855/