我看过本教程:
http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#combobox
但是它为整个列定义了一个组合框。我想为列的不同单元格定义不同的组合框。
为了简单起见,我们假设JTable
中有n行,而JTable
的第i列将是包含组合框的列。如果我有一个ComboBox
[] comboBoxes,其中comboBoxes.length == n,我该如何解决comboBoxes [0]将成为JTable
的第[0] [i]个单元格comboBoxes的内容[1]将是JTable
的第[1] [i]个单元格,依此类推,comboBoxes [n-1]将是JTable
的第[n-1] [i]个单元格。我该如何实现?
谢谢。
最佳答案
我仍然不知道如何设置单元格的单元格编辑器。
在TableComboBoxByRow
的特殊情况下,程序首先在名为List<TableCellEditor>
的editors
中创建一系列编辑器,以供以后使用。然后,该程序会覆盖getCellEditor()
的JTable
方法,并为其中的每一行返回所需的编辑器。
组合列。请注意,前三行分别与List
如何获得不同的编辑器,而第四行编辑器只是超类提供的默认文本字段。