Ich habe kürzlich einen Fehler in Java gefunden, wo JList die valueChanged() -Methode zweimal beim Ändern eines Wertes mit der Maus und nur einmal beim Ändern eines Wertes mit der Tastatur auslöst. Ich habe gerade a bug diesbezüglich auf der Website von Oracle (anscheinend ist der Fehler mehr als zwölf Jahre alt) gefunden, und ich frage mich, wenn jemand mir erklären kann, warum Oracle entschieden hat, dass dies kein Defekt ist (nicht zu erwähnen, dass getValueIsAdjusting() false zurückgibt, wenn die Tastatur verwendet wird).JList feuert valueChanged zweimal, wenn ein Wert per Maus geändert wird
Für alle, die dieses Problem haben, fand ich, dass einfach zu überprüfen, wenn getValueIsAdjusting()
falsch ist, dann wird der Rest meiner Methode um das Problem herumlaufen.
Siehe auch http://stackoverflow.com/a/12193333/1076463 – Robin
Was ist hier die Frage? –
es ist kein Fehler, es ist eine Funktion ;-) Im Ernst, es ist bekannt (Husten .. vergessen Sie es gelegentlich selbst), dass die meiste Zeit nur Benachrichtigungen mit! GetIsValueAdjusting für Anwendungscode relevant sind. Abgesehen davon, worüber genau beschwerst du dich? – kleopatra