Hallo Java-Community,
in meiner Anwendung tritt ein Phänom auf, das mich nun schon einen ganzen Tag beschäftigt. Jetzt wende ich mich an euch, in der Hoffnung, dass ihr viellleicht einen Tipp habt.
Ich baue gerade in einer ziemlichen großen Anwendung eine relativ simple Popup-Funktionalität ein. Fährt der Benutzer mit der Maus über eine bestimmte Stelle im Anwendungsfenster, geht ein Popup auf. Verlässt der Mauszeiger das Popup, soll es wieder geschlossen werden.
In dem Popup (ein Objekt der Klasse javax.swing.Popup) liegt als content ein JPanel, welches wiederum eine ganze Vielfalt an Komponenten enthält. Auf dem JPanel füge ich nun einen MouseListener hinzu, der im Prinzip beim Verlassen popup.hide() aufruft. Soweit, so gut.
Fahre ich jetzt langsam mit der Maus aus dem Popup heraus, funktioniert alles einwandfrei. Bin ich nun mit der Maus aber schneller unterwegs, kommt kein MouseEvent an und das Popup schließt sich demzufolge auch nicht.
Irgendwo gehen also meine MouseEvents verloren. Ich kann jetzt hier kein Beispielcode zeigen, da es ein sehr komplexes Gerüst ist. Baue ich mir eine kleine Miniannwendung auf, die nur das Popup anzeigt, funktioniert es auch einwandfrei. Nur in meiner "großen" Anwendung läuft es nicht so wie ich es will.
Hat jemand eine Idee wohin meine MouseEvents verschwinden könnten?
Viele Grüße
Bartleby
in meiner Anwendung tritt ein Phänom auf, das mich nun schon einen ganzen Tag beschäftigt. Jetzt wende ich mich an euch, in der Hoffnung, dass ihr viellleicht einen Tipp habt.
Ich baue gerade in einer ziemlichen großen Anwendung eine relativ simple Popup-Funktionalität ein. Fährt der Benutzer mit der Maus über eine bestimmte Stelle im Anwendungsfenster, geht ein Popup auf. Verlässt der Mauszeiger das Popup, soll es wieder geschlossen werden.
In dem Popup (ein Objekt der Klasse javax.swing.Popup) liegt als content ein JPanel, welches wiederum eine ganze Vielfalt an Komponenten enthält. Auf dem JPanel füge ich nun einen MouseListener hinzu, der im Prinzip beim Verlassen popup.hide() aufruft. Soweit, so gut.
Fahre ich jetzt langsam mit der Maus aus dem Popup heraus, funktioniert alles einwandfrei. Bin ich nun mit der Maus aber schneller unterwegs, kommt kein MouseEvent an und das Popup schließt sich demzufolge auch nicht.
Irgendwo gehen also meine MouseEvents verloren. Ich kann jetzt hier kein Beispielcode zeigen, da es ein sehr komplexes Gerüst ist. Baue ich mir eine kleine Miniannwendung auf, die nur das Popup anzeigt, funktioniert es auch einwandfrei. Nur in meiner "großen" Anwendung läuft es nicht so wie ich es will.
Hat jemand eine Idee wohin meine MouseEvents verschwinden könnten?
Viele Grüße
Bartleby