Hallo,
Ich bastel derzeit an einem Programm, in dem Daten eingelesen und anschließend in einer Tabelle dargestellt werden sollen. Jetzt wollte ich gerne die Tabellenbreiten festlegen. Da ich zu Beginn noch nicht weiß, wie viele Spalten ich habe, dachte ich mir, ich bastel mir eine Schleife und packe die mit in meinen ActionListener für das Dateiöffnen, die Schleife sieht folgendermaßen aus:
Ich hole mir also die Spaltenanzahl mit getColumnCount, was auch funktioniert. Wenn ich mein Programm dann starte, funktioniert das ganze auch, jedoch nur für die erste Spalte, also für i=0. Beim zweiten Durchlauf stoppt das ganze dann mit folgender Fehlermeldung:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1 >= 1
Und danach eben auch noch ein ganzer Haufen anderer Fehlermeldungen.
Ich hab auch schon geguckt, ob es mit ner festen Zahl (also zum Beispeil Spalte 2 oder so) funktioniert, ohne Schleife, aber das will auch nicht, dann kommt die gleiche Fehlermeldung (nur eben mit der jeweiligen Zahl >= 1).
Woran kann das liegen? Ich hab mir vor und während der Schleife auch die ColumnCount ausgeben lassen, die liegt bei meiner Testdatei bei 5 und daran ändert sich auch nichts.
Gibt es eine andere Möglichkeit, die Spaltenbreite irgendwie festzulegen? Bzw. einen anderen Ort? Da zu Beginn meines Programms ja noch gar keine Spalten vorhanden sind, kann ich das ja erst während/ nach dem Öffnen einer Datei machen oder?
Ich bastel derzeit an einem Programm, in dem Daten eingelesen und anschließend in einer Tabelle dargestellt werden sollen. Jetzt wollte ich gerne die Tabellenbreiten festlegen. Da ich zu Beginn noch nicht weiß, wie viele Spalten ich habe, dachte ich mir, ich bastel mir eine Schleife und packe die mit in meinen ActionListener für das Dateiöffnen, die Schleife sieht folgendermaßen aus:
Code:
for (int i = 0; i < ptmtest.getColumnCount(); i++) {
tblSpalte = pTabelle.getColumnModel().getColumn(i);
tblSpalte.setWidth(150);
tblSpalte.setPreferredWidth(150);
tblSpalte.setResizable(false);
}
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1 >= 1
Und danach eben auch noch ein ganzer Haufen anderer Fehlermeldungen.
Ich hab auch schon geguckt, ob es mit ner festen Zahl (also zum Beispeil Spalte 2 oder so) funktioniert, ohne Schleife, aber das will auch nicht, dann kommt die gleiche Fehlermeldung (nur eben mit der jeweiligen Zahl >= 1).
Woran kann das liegen? Ich hab mir vor und während der Schleife auch die ColumnCount ausgeben lassen, die liegt bei meiner Testdatei bei 5 und daran ändert sich auch nichts.
Gibt es eine andere Möglichkeit, die Spaltenbreite irgendwie festzulegen? Bzw. einen anderen Ort? Da zu Beginn meines Programms ja noch gar keine Spalten vorhanden sind, kann ich das ja erst während/ nach dem Öffnen einer Datei machen oder?