Bom pessoal!Minha duvida e o seguinte
usei esse tutorial http://java.sun.com/docs/books/tutorial/uiswing/components/table.html da sun e consegui implementar um chech so que não
estou conseguindo fazer ele ser editável.Alguém poderia me ajudar?
Segue o código.
private ArrayList datalist = new ArrayList();
private String[] columns = {"Bico", "Identificação", "Calibração","Data","Ativar","Obs"};
public SensorTableModel() {
}
public SensorTableModel(List l) {
datalist.addAll(l);
}
@Override
public int getRowCount() {
return datalist.size();
}
@Override
public int getColumnCount() {
return columns.length;
}
@Override
public boolean isCellEditable(int row, int col) {
switch (col) {
case 0: //Address
return false;
case 1: //Description
return true;
case 2: //Status
return false;
case 3: //Datevent
return false;
case 4: //Datevent
return true;
case 5: //Datevent
return false;
default:
return false;
}
}
@Override
public Class getColumnClass(int col) {
switch (col) {
case 0: //Address
return Long.class;
case 1: //Description
return String.class;
case 2: //Correction
return String.class;
case 3: //Correction
return String.class;
case 4:
return Boolean.class;
case 5:
return String.class;
default:
return null;
}
}
@Override
public void setValueAt(Object value, int row, int col) {
Sensor ss = (Sensor) datalist.get(row);
switch (col) {
case 0: //Address
ss.setAddress(Integer.parseInt(value.toString()));
break;
case 1: //Description
ss.setDescription(value.toString());
break;
case 2: //Correction
ss.setStatus(value.toString());
break;
case 3: //Date
formatter.format(ss.getDatevent());
case 4:
new Boolean(true);
break;
}
}
@Override
public String getColumnName(int col) {
return columns[col];
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
Sensor ss = (Sensor) datalist.get(rowIndex);
switch (columnIndex) {
case 0:
return (ss.getAddress()-100);
case 1:
return ss.getDescription();
case 2:
return ss.getStatus();
case 3:
return formatter.format(ss.getDatevent());
case 4:
new Boolean(true);
default:
return null;
}
}
public Sensor getEventsSensorsAt(int row) {
return (Sensor) datalist.get(row);
}
public void addEventsSensors(Sensor ls) {
datalist.add(ls);
fireTableDataChanged();
}
public Sensor removeEventsSensorsAt(int row) {
Sensor tmp = (Sensor) datalist.remove(row);
fireTableDataChanged();
return tmp;
}
public void addEventsSensorsList(List l) {
datalist.addAll(l);
fireTableDataChanged();
}