hey leute!
wie mach ich eine jtable aus einer arraylist??
lg,
gladiator
wie mach ich eine jtable aus einer arraylist??
lg,
gladiator
package tablesave;
/*
* STableModel
* source level 1.4
*/
import java.util.*;
import java.util.List;
import javax.swing.table.*;
public class STableModel extends AbstractTableModel {
private List rowList;
public static final int NAME = 0;
public static final int PHONE = 1;
private String[] headers = {"Name","Phone"};
public STableModel() {
rowList = new ArrayList();
}
public int addElement(final STableRow rowData) {
rowList.add(rowData);
this.fireTableDataChanged();
return rowList.size()-1;
}
public void removeElement(final STableRow rowData) {
rowList.remove(rowData);
this.fireTableDataChanged();
}
public void setEntries(final List dataList) {
clear();
for (int row = 0; row < dataList.size(); row++) {
rowList.add(dataList.get(row));
}
}
public String getColumnName(int i) {return headers[i];}
public int getColumnCount() {return headers.length;}
public int getRowCount() {return rowList.size();}
public Object getRowAt(int row) {return rowList.get(row);}
public void setRowAt(final STableRow rowData, int row) {
rowList.set(row, rowData);
this.fireTableRowsUpdated(row, row);
}
public Object getValueAt(final int row, final int col) {
if(col == NAME)
return ((STableRow)rowList.get(row)).getName();
if(col == PHONE)
return ((STableRow)rowList.get(row)).getPhone();
return (Object) null;
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
if(columnIndex == PHONE) return true;
return false;
}
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
if(columnIndex == NAME)
((STableRow)rowList.get(rowIndex)).setName((String) aValue);
if(columnIndex == PHONE)
((STableRow)rowList.get(rowIndex)).setPhone((String) aValue);
}
public void clear() {
int rows = getRowCount();
rowList.clear();
fireTableRowsDeleted(0,rows);
}
public String[] getHeaders() {return headers;}
public List getRowList() {return rowList;}
public void setHeaders(final String[] headers) {this.headers = headers;}
public void setRowList(final List rowList) {this.rowList = rowList;}
}