gpt4 book ai didi

java - 将 JComboBox 放入 JTable

转载 作者:搜寻专家 更新时间:2023-10-30 19:44:56 26 4
gpt4 key购买 nike

我想将单独的 JComboBoxes 放入 JTable 的每个单元格中。 IE。每个单元格的 JComboBox 内容都不相同。

我基本上希望能够调用以下代码将一行 JComboBox 添加到 JTable 中。有人知道吗?谢谢

JComboBox cb1 = new JComboBox(...);
JComboBox cb2 = new JComboBox(...);
model.addRow(new Object[] {"Row name", cb1, cb2} );

JComboBox cb3 = new JComboBox(...);
JComboBox cb4 = new JComboBox(...);
model.addRow(new Object[] {"Row name 2", cb3, cb4} );

我能找到的最接近的示例代码如下。但这是针对各个列的 JComboBox 内容相同的地方。不是我需要的解决方案。

TableColumn col = table.getColumnModel().getColumn(vColIndex);
col.setCellEditor(new MyComboBoxEditor(values));

在哪里

public class MyComboBoxEditor extends DefaultCellEditor {
public MyComboBoxEditor(String[] items) {
super(new JComboBox(items));
}
}

最佳答案

用这段代码扩展 JTable:

@Override
public TableCellEditor getCellEditor(int row, int column) {
Object value = super.getValueAt(row, column);
if(value != null) {
if(value instanceof JComboBox) {
return new DefaultCellEditor((JComboBox)value);
}
return getDefaultEditor(value.getClass());
}
return super.getCellEditor(row, column);
}

这将为您获得 a 值的每个组合框创建一个唯一的 JComboBox 单元格编辑器。

关于java - 将 JComboBox 放入 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/457463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com