Hallo,
nachdem ich herausgefunden habe wie man richtig auf die ListSelectionEvent reagiert wollte ich andere Stellen in meinem Programm umstellen.
Nun komme ich an einer Stelle nicht weiter:
in einer ValueChanged wird nur dann das Model und die Gui aktualisiert wenn das Flag e.getValueIsAdjusting() auf true steht - also ist die Auswahl eigentlich noch nicht fertig. Das Flag des ListSelectionModels isSelectionEmpty ist zwar schon auf false was ja bedeutet, dass die Auswahl schon eindeutig ist.
Es werden i.d.R. 2 Events bei Wechsel der Auswahl der jTable geliefert, das erste dann immer mit getValueIsAdjusting() auf true.
Nun wollte ich es "richtig" machen und reagiere nur dann mit einer Aktualsierung wenn dieses Flag auf false ist. Das Ergebniss: manchmal kommt gar kein 2. Event mehr bei dem das Flag auf false ist. Wenn es kommt und ich die Aktualisierung mache kommt es nach Verlassen meines Listeners zur folgenden Exception:
Exception in thread "AWT-EventQueue-0"
An was kann das denn alles liegen. Die Methode zum Aktualisieren ist relativ umfangreich - es wird aber u.a. jTable.updateUI(); u repaint(); aufgerufen .
Wäre für Tips dankbar.
Grüße
Matt
nachdem ich herausgefunden habe wie man richtig auf die ListSelectionEvent reagiert wollte ich andere Stellen in meinem Programm umstellen.
Nun komme ich an einer Stelle nicht weiter:
in einer ValueChanged wird nur dann das Model und die Gui aktualisiert wenn das Flag e.getValueIsAdjusting() auf true steht - also ist die Auswahl eigentlich noch nicht fertig. Das Flag des ListSelectionModels isSelectionEmpty ist zwar schon auf false was ja bedeutet, dass die Auswahl schon eindeutig ist.
Es werden i.d.R. 2 Events bei Wechsel der Auswahl der jTable geliefert, das erste dann immer mit getValueIsAdjusting() auf true.
Nun wollte ich es "richtig" machen und reagiere nur dann mit einer Aktualsierung wenn dieses Flag auf false ist. Das Ergebniss: manchmal kommt gar kein 2. Event mehr bei dem das Flag auf false ist. Wenn es kommt und ich die Aktualisierung mache kommt es nach Verlassen meines Listeners zur folgenden Exception:
Exception in thread "AWT-EventQueue-0"
java.lang.NullPointerException
at javax.swing.plaf.basic.BasicTableUI$Handler.setValueIsAdjusting(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)An was kann das denn alles liegen. Die Methode zum Aktualisieren ist relativ umfangreich - es wird aber u.a. jTable.updateUI(); u repaint(); aufgerufen .
Wäre für Tips dankbar.
Grüße
Matt