如果需要,我会发布SSCCE。
我有一个带有JComboBoxes @ JT和Second Columns的JTable。
在第一列JComboBox中选择一行后,我想更新此行的第二列JComboBox。 (链接选择 - 我知道如何使用普通的JComboBox来做到这一点但JTable出了问题)
我尝试过getValueAt(int row,int col)方法来更改CellEditor并将虚拟设置为空字符串(如无选择),但它无法正常工作。没有正确更新JComboBox,也不允许选择和其他一些奇怪的东西。
此外,尝试使用第一列JComboBox的ItemListener,但我找不到正确更新第二列JComboBox的方法。我尝试更改所选行的CellEditor,但它似乎也在弄乱其他行,就像它记得以前选择的行或类似的东西一样。
在JTable中进行链式选择的正确方法是什么?我已经搞乱了这个差不多一个星期..
答案 0 :(得分:0)
在您的情况下,您应该使用单元格编辑器(您的JCombobox)。从编辑器中,您可以从JCombobox获取值并将此值设置为另一个JCombobox。 在我看来,你可以1)获得选定的细胞; 2)从细胞中你可以获得细胞编辑; 3)来自编辑器(如果编辑器是JCombobox,你可以获得文本字段组件,并且从这个组件中你可以得到值,jCombobox在这种情况下必须是可编辑的)你可以获得价值。