Olá a todo o mundo
Eu tenho um combobox dentro de uma célula de uma table. Tenho a combobox com os valores dentro da table, mas não consigo definir o valor por defeito da combobox.
Eis o exemplo do meu código:
Código do botão update:
TableColumn sportColumn = table.getColumnModel().getColumn(0);
JComboBox comboBox = new JComboBox();
comboBox.addItem("Snowboarding");
comboBox.addItem("Rowing");
comboBox.addItem("Knitting");
comboBox.addItem("Speed reading");
comboBox.addItem("Pool");
comboBox.addItem("None of the above");
comboBox.setSelectedItem("Speed reading");
DefaultCellEditor defaultCellEditor = new DefaultCellEditor(comboBox);
sportColumn.setCellEditor(defaultCellEditor);
sportColumn.setCellRenderer(new CheckBoxCellRenderer(comboBox));
table.repaint();
Código da classe tablecellrender:
class CheckBoxCellRenderer extends JComboBox implements TableCellRenderer {
public CheckBoxCellRenderer(JComboBox comboBox) {
for (int i = 0; i < comboBox.getItemCount(); i++) {
this.addItem(comboBox.getItemAt(i));
}
}
@Override
public Component getTableCellRendererComponent(JTable jtable, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
this.setSelectedItem(value);
return this;
}
@Override
public void setSelectedItem(Object selecao) {
this.setSelectedItem(selecao);
}
}
Quem me puder ajudar agradecia.
Valeu