我在专栏中创建了JComboBox,它运行得很好。当我试图在同一列中再添加一个编辑器时,就会出现这个问题。场景中,用户需要从ComboBox中选择值作为他们的备注。如果选择其他文本框,则另一个文本框应出现在ComboBox下面,供用户键入。
ComboBox代码
TableColumn col5 = jTable1.getColumnModel().getColumn(4);
String[] options = new String[]{"Font Issue","Text Issue","Image Issue","AI Issue","Others"};
JComboBox combo1 = new JComboBox(options);
JComboBox combo2 = new JComboBox(options);
col5.setCellEditor(new DefaultCellEditor(combo1));
col5.setCellRenderer(new ComboBoxRenderer(combo2));
combo2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JComboBox nameCombo = (JComboBox)e.getSource();
String newSelection = (String)nameCombo.getSelectedItem();
if(newSelection.equalsIgnoreCase("others"))
{
}
}
});当我再加一个编辑器时。
MyTableCellEditor textEditor = new MyTableCellEditor (); col5.setCellEditor(textEditor );
它覆盖下拉列表。我想要这样的东西。

发布于 2013-08-01 05:06:01
Swing编辑器旨在占用单个单元格的空间。如果要显示一个包含两个组件的面板,则需要创建一个弹出编辑器。请阅读有关使用其他编辑的Swing教程中的部分,以了解如何做到这一点。
https://stackoverflow.com/questions/17985166
复制相似问题