Hey Leute!
Ich habe eine Frage: Ich habe ein JTabel indem meine Daten angezeigt werden. Ich möchte das gerne so haben, dass, wenn die Spaltenbreite der einzelnen Column's geändert werden, die Spaltenbreiten der Spalten in einer Datei gespeichert werden.
Ich habe es bereits hinbekommen, dass die Spaltenbreiten (beim Programmstart) aus einer Datei gelesen werden und diese den 13 Spalten als mitgegeben werden.
Jetzt versuche ich die Spaltenbreite der einzelnen Spalten auszulesen. Ich suche auch schon eine Weile nach einer Lösung, aber ich finde nichts passenden. Ich finde keine Anweisung mit der ich die Breite einer Column in einer laufenden Anwendung abfragen kann.
Das ist mein bisheriger Erfolg - jedoch wird für alle 13 Spalten die Breite von 75 ausgegeben.
Ich bin etwas ratlos....
Ich habe eine Frage: Ich habe ein JTabel indem meine Daten angezeigt werden. Ich möchte das gerne so haben, dass, wenn die Spaltenbreite der einzelnen Column's geändert werden, die Spaltenbreiten der Spalten in einer Datei gespeichert werden.
Ich habe es bereits hinbekommen, dass die Spaltenbreiten (beim Programmstart) aus einer Datei gelesen werden und diese den 13 Spalten als mitgegeben werden.
Jetzt versuche ich die Spaltenbreite der einzelnen Spalten auszulesen. Ich suche auch schon eine Weile nach einer Lösung, aber ich finde nichts passenden. Ich finde keine Anweisung mit der ich die Breite einer Column in einer laufenden Anwendung abfragen kann.
Code:
JTable table = new JTable(liste); // ein TableModel wird übergeben
table.setAutoCreateRowSorter(true);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
TableColumnModel colMod = table.getColumnModel();
colMod.getColumn(0).setPreferredWidth(30); //funktioniert bei allen 13 spalten
colMod.getColumn(1)...
colMod.getColumn(2)...
int colSize0 = colMod.getColmun(0).getWidth();
int colSize1 = colMod.getColmun(1)...
int colSize2 = colMod.getColmun(2)...
System.out.println("Breite der Spalte 0 :"+colSize0); //es wird 75 ausgegeben
Das ist mein bisheriger Erfolg - jedoch wird für alle 13 Spalten die Breite von 75 ausgegeben.
Ich bin etwas ratlos....
Zuletzt bearbeitet: