У меня проблемы с помещением javax.swing.JComboBox в ячейку org.jdesktop.swingx.JXTable. Я просмотрел предыдущие вопросы об этой проблеме, но не помог.
Я пытался:
colModel.getColumnExt(HDTableAdapter.STATUS).setCellEditor(editorCB);
colModel.getColumnExt(HDTableAdapter.STATUS).setCellRenderer(rendererCB);
class comboBoxRenderer extends JComboBox implements TableCellRenderer {
public comboBoxRenderer(String[] items) {
super(items);
}
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
if (isSelected) {
setForeground(table.getSelectionForeground());
super.setBackground(table.getSelectionBackground());
} else {
setForeground(table.getForeground());
setBackground(table.getBackground());
}
setSelectedItem(value);
return this;
}
}
class comboBoxEditor extends DefaultCellEditor {
public comboBoxEditor(String[] items) {
super(new JComboBox(items));
}
}
Но в этом случае я получаю нередактируемый ComboBox внутри ячейки.