Hallo, ich brauche Hilfe, suche mir hier einen Wolf.
Ich habe ein AbstractTableModel das Daten aus einer Oracle Datenbank liefert. Funktioniert auch prima. Allerdings scheitere ich beim Versuch einen Wert in der JTable zu ändern.
Meine Frage ist, was muss ich hier an setValueAt übergeben (Bitte Beispiel)
Hier ist mein AbstractTableModel:
Ich habe ein AbstractTableModel das Daten aus einer Oracle Datenbank liefert. Funktioniert auch prima. Allerdings scheitere ich beim Versuch einen Wert in der JTable zu ändern.
Meine Frage ist, was muss ich hier an setValueAt übergeben (Bitte Beispiel)
Hier ist mein AbstractTableModel:
Java:
public class FillTable extends AbstractTableModel{
private ResultSet rs;
private int rowCount;
private int columnCount;
private ArrayList data=new ArrayList();
Object[][] contents;
public FillTable(ResultSet _rs) throws Exception
{
setRS(_rs);
}
public void setRS(ResultSet _rs) throws Exception {
this.rs=_rs;
ResultSetMetaData metaData=_rs.getMetaData();
rowCount=0;
columnCount=metaData.getColumnCount();
while(_rs.next()){
Object[] row=new Object[columnCount];
for(int j=0;j<columnCount;j++){
row[j]=_rs.getObject(j+1);
}
data.add(row);
rowCount++;
}
}
public int getColumnCount(){
return columnCount;
}
public int getRowCount(){
return rowCount;
}
public Object getValueAt(int rowIndex, int columnIndex){
Object[] row=(Object[]) data.get(rowIndex);
return row[columnIndex];
}
public void setValueAt(Object value, int row, int col) {
contents[row][col] = value;
fireTableCellUpdated(row,col);
}
public String getColumnName(int columnIndex){
try{
ResultSetMetaData metaData=rs.getMetaData();
return metaData.getColumnName(columnIndex+1);
}catch(Exception e){
e.printStackTrace();
return null;
}
}
}