Hallo. Ich habe eine JTable ,welche ein eigenes Modell besitzt, in Verbindung mit einer JScrollPane. Dieses Modell basiert auf einem Array, welches bei einer bestimmten Benutzeraktion durch ein anderes ersetzt wird. Das neue Array besitzt normalerweise total andere Werte und auch mehr oder weniger Zeilen. Meine JTable wird jedoch nicht aktualisiert, sie wird erst durch manuelle Veränderung der Fenstergröße auf den aktuellen Stand gebracht. Ich habe es bereits mit repaint() und revalidate() versucht, beides zeigte keine Wirkung. Beim setzen des Arrays wird auch
fireTableDataChanged() ausgeführt, aber es wirkt nicht, genausowenig fireTableStructureChanged(). Woran kann dies noch liegen?
Danke im Vorraus!
fireTableDataChanged() ausgeführt, aber es wirkt nicht, genausowenig fireTableStructureChanged(). Woran kann dies noch liegen?
Code:
//hauptprogramm
private gkoTableModel = new GeckoTableModel();
private JTable table = new JTable(gkoTableModel);
...
add(new JScrollPane(table));
...
if (evt.getPropertyName().equals(GeckoController.CURRENT_FILE_PROPERTY)) {
gkoTableModel.setFiles((File[]) evt.getNewValue());
}
//gkoTableModel
public void setFiles(File[] files) {
this.files = files;
fireTableDataChanged();
}
Danke im Vorraus!