Galera,
Não há cristo que faça a JTable deixar uma certa coluna editavel. Esta coluna eu mostra em checkbox, porem não consigo alterar o valor da checkbox, eu clico nela porem não marca, aparentemente a coluna está travada para alteração mas eu setei o atributa da JTable que deixa editar!!!
Usei o seguinte código.
private class MyTableModel extends AbstractTableModel{
private String[] columns = {"CheckOut", "Versão", "Ocorrência", "Detalhes" ,"Comparar"};
boolean[] columnEditable = new boolean[] {false, false, false, true, true};
Class[] columnTypes = new Class[] {Integer.class, String.class, String.class, JButton.class, Boolean.class };
public VersaoMapaDescritorTableModel() {
}
public int getColumnCount() {
return columns.length;
}
public String getColumnName(int col) {
return columns[col];
}
public int getRowCount() {
return versaoMapa.size();
}
public Object getValueAt(int rowIndex, int columnIndex) {
MeuBean bean = tabela.get(rowIndex);
switch(columnIndex) {
case 0:
String retorno = "0";
if (bean.getQtExportacaoVersao() == 1){
retorno = "1";
} else if (bean.getQtExportacaoVersao() > 1){
retorno = "2";
}
return retorno;
case 1: return bean.getCdStatus();
case 2: return bean.getCdRegistroOcorrencia();
case 3: return "...";
case 4: return Boolean.FALSE;
}
return null;
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
// return columnEditable[columnIndex];
return true;
}
public Class<?> getColumnClass(int c) {
return columnTypes[c];
}
}
Desde já agradeço.
Croda.