JTable中ComboBox的选择监听器

时间:2016-01-17 06:41:49

标签: java swing jtable jcombobox tablecelleditor

下面是我桌子的照片。列UnitDescriptionComboBox个编辑器。我为Description列添加了一个项目监听器,当我选择其他项目时,Unit列的项目也会更改。

我的问题是有些实例对于表的其他行,它会有不同的描述。与前一行相比,该行的Unit列也会有不同的项目。

如果更改了列B的ComboBox,那么如何仅为该行填充{A}的ComboBox

enter image description here

1 个答案:

答案 0 :(得分:2)

首先查看Concepts: Editors and RenderersUsing Other Editors

一般的答案是,您需要两位编辑,在调用TableCellEditor#getTableCellEditorComponent时,您可以使用JTable引用和row / column属性来查找列B的当前值,并通过方法

更新您返回的编辑器的值

现在,如果您想根据对列A的更改来更改列B的值,则需要查看TableModel#setValueAt方法,该方法将在更改任何单元格的值,并根据A

的当前值修改B