0

如果需要,我会发布 SSCCE。

我有一个带有 JComboBoxes @ First 和 Second Columns 的 JTable。

在一行的第一列 JComboBox 中进行选择后,我想更新该行的第二列 JComboBox。(链式选择 - 我知道如何使用普通的 JComboBoxes 来做到这一点,但 JTable 出了问题)

我尝试了 getValueAt(int row, int col) 方法来更改 CellEditor 并将值设置为空字符串(如无选择),但它不能正常工作。没有正确更新 JComboBox 并且不允许选择和其他一些奇怪的事情。

此外,为第一列 JComboBox 尝试了 ItemListener,但我找不到正确更新第二列 JComboBox 的方法。我尝试更改所选行的 CellEditor,但它似乎也与其他行混淆了,它更像是它记得以前选择的行或类似的东西。

在 JTable 中进行链式选择的正确方法是什么?我已经搞砸了将近一个星期..

4

1 回答 1

0

在您的情况下,您应该使用单元格编辑器(您的 JCombobox)。从编辑器中,您可以从 JCombobox 获取值并将此值设置为另一个 JCombobox。在我看来,您可以 1)获得选定的单元格;2)从单元格中你可以得到单元格编辑器;3)从编辑器(如果编辑器是JCombobox你可以得到文本字段组件,从这个组件你可以得到值,在这种情况下jCombobox必须是可编辑的)你可以得到值。

于 2013-01-31T10:59:47.760 回答