G
Guest
Gast
Hallo zusammen,
habe mir eine kleine Swing-Anwendung gebastelt, in welcher ich Daten in einer JTable anzeige. Soweit so gut.
Doch leider werden mir die Spaltenüberschriften nicht angezeigt.
Die Tabelle erzeuge ich wie folgt:
Das dazugehörige Modell sieht so aus:
Könnt ihr mir da helfen? Was mach ich falsch?
habe mir eine kleine Swing-Anwendung gebastelt, in welcher ich Daten in einer JTable anzeige. Soweit so gut.
Doch leider werden mir die Spaltenüberschriften nicht angezeigt.
Die Tabelle erzeuge ich wie folgt:
Code:
MATableModel myModel = new MATableModel(mitarbeiter);
maTable = new JTable(myModel);
JScrollPane jp = new JScrollPane(maTable);
constraints.gridx = 0; // X-Koordinate
constraints.gridy = 0; //Y-Koordinate
constraints.gridheight = 10;
constraints.gridwidth = 5;
gbl.setConstraints(maTable, constraints);
maTable.setModel(myModel);
panel.add(maTable);
Das dazugehörige Modell sieht so aus:
Code:
private class MATableModel extends AbstractTableModel {
private static final long serialVersionUID = 8823887607183509554L;
private ArrayList<Mitarbeiter> mitarbeiter;
public MATableModel(ArrayList<Mitarbeiter> daten) {
this.mitarbeiter = daten;
}
public int getColumnCount () {
return 4;
}
public String getColumnName (int columnIndex) {
String columnName;
if (columnIndex == 0) {
columnName = "Name";
} else if (columnIndex == 1) {
columnName = "Vorname";
} else if (columnIndex == 2) {
columnName = "Rank";
} else if (columnIndex == 3) {
columnName = "Stundensatz";
} else {
throw new IndexOutOfBoundsException ();
}
return columnName;
}
public int getRowCount () {
return mitarbeiter.size ();
}
public boolean isCellEditable(final int rowIndex, final int columnIndex) {
return true;
}
public Object getValueAt (int rowIndex, int columnIndex) {
Object value;
Mitarbeiter person = mitarbeiter.get (rowIndex);
if (columnIndex == 0) {
value = person.getName ();
} else if (columnIndex == 1) {
value = person.getVorname ();
} else if (columnIndex == 2) {
value = person.getRank ();
} else if (columnIndex == 3) {
value = person.getStundensatz ();
} else {
throw new IndexOutOfBoundsException ();
}
return value;
}
Könnt ihr mir da helfen? Was mach ich falsch?