Hallo zusammen,
hab wieder mal ein kleines Problemchen:
Es gibt ein Dialogfenster mit 3 Eingabefelder(
). Wenn ich meine Eingabe gemacht habe und das Feld verlasse - egal ob mit TAB oder mit der Maus ins nächste feld geklickt - reagiert ein
, der schaut ob was neues gekommen ist und dies an das Model meldet.
So weit so gut.
Wenn ich mein Dialog aber bereits vorgefüllt vorfinde (Das Model hat bereits paar Daten, die gleich mal in den entsprechenden Textfeldern drin sind) ist die Editierung etwas komisch:
Gro/Kleinschreibung bei bereits vorhandenen String wird ignoriert
Bsp: 1.Teststraße(original), 2.TestStraße(s-->S), 3. Nach dem Vrelassen des Feldes wieder "Teststraße"
Das selbe passiert auch umgekehrt, wenn ich einen Kleinbuchstaben groß schreibe.
Der
springt da komischerweiße nicht an, er reagiert nur wenn ich irgendwo einen ganz neuen Buchstaben hinzufüge/Buchstaben ändere/Leerzeichen oder sonstige Zeichen(Komma, Punkt usw.) eintrage.
Um das Problem zu lösen, habe ich dem Feld ein
hinzugefügt. Bei
wird der aktuelle Werd aus dem textfeld geholt und dem model übergeben - funktioniert!
Das Spannende ist jedoch: Dieses Problem tritt nur bei einem der drei JGTextFields auf, obwohl die beiden absolut gleich implementiert sind. Ich kann mir das nicht erklären, außer es ist ein Threading-Problem (Das Dialog, um das es sich handelt ist nähmlich das insgesammt 3.Fenster: Hauptfenster-->1.Dialog -->2.Dialog) Es tritt nähmlich immer auf, egal von welcher Stelle der Software dieses Dialogfenster aufgerufen wird (es ist auch immer das 3.Fenster).
Meine Lösung mit dem FocusListener funktioniert zwar, gefällt mir jedoch nicht. :noe:
Ich hätte gehofft, dass es irgendwie über ein propertyChangeListener gelöst werden kann. Wenn es wirklich ein Threading-Problem ist, bin ich wirklich ratlos ???:L
hab wieder mal ein kleines Problemchen:
Es gibt ein Dialogfenster mit 3 Eingabefelder(
Code:
JGTextField
Code:
PropertyChangeListener
So weit so gut.
Wenn ich mein Dialog aber bereits vorgefüllt vorfinde (Das Model hat bereits paar Daten, die gleich mal in den entsprechenden Textfeldern drin sind) ist die Editierung etwas komisch:
Gro/Kleinschreibung bei bereits vorhandenen String wird ignoriert
Bsp: 1.Teststraße(original), 2.TestStraße(s-->S), 3. Nach dem Vrelassen des Feldes wieder "Teststraße"
Das selbe passiert auch umgekehrt, wenn ich einen Kleinbuchstaben groß schreibe.
Der
Code:
propertyChangeListener
Um das Problem zu lösen, habe ich dem Feld ein
Code:
FocusListener
Code:
focusLost()
Das Spannende ist jedoch: Dieses Problem tritt nur bei einem der drei JGTextFields auf, obwohl die beiden absolut gleich implementiert sind. Ich kann mir das nicht erklären, außer es ist ein Threading-Problem (Das Dialog, um das es sich handelt ist nähmlich das insgesammt 3.Fenster: Hauptfenster-->1.Dialog -->2.Dialog) Es tritt nähmlich immer auf, egal von welcher Stelle der Software dieses Dialogfenster aufgerufen wird (es ist auch immer das 3.Fenster).
Meine Lösung mit dem FocusListener funktioniert zwar, gefällt mir jedoch nicht. :noe:
Ich hätte gehofft, dass es irgendwie über ein propertyChangeListener gelöst werden kann. Wenn es wirklich ein Threading-Problem ist, bin ich wirklich ratlos ???:L