Swing MouseEvents bei gestapelten Panels

Vivid

Mitglied
Hallo,

Ich habe ein JPanel (A), das ein anderes JPanel (B) enthält. Nun würde ich auf A gerne einen MouseMotionListener und auf B einen MouseListener legen. Problem dabei ist, dass A nur reagiert, wenn die Maus sich außerhalb von B befindet. Scheinbar hängt es mit dem Event Bubbling in Swing zusammen.

Kennt jemand von euch eine sinnvolle und produktive Lösung für dieses Problem?

Event-forwarding macht für mich in diesem Fall kein Sinn, da ich auf Eigenschaften des Events zugreifen muss, wie z.B. getX() die relativ zur Source des Events ist.

Danke 🙁
 
Also Panel B soll beim onDragged reagieren und anschließend das Event bei A aufrufen. Von B will ich nur die Information bekommen, dass es sicher um das bestimmte Objekt handelt und in A muss ich dann die Maus-Position relativ zu Panel A auslesen. Bei Event-forwarding (z.B. myAPanel.mouseDragged(e)😉 würde ich aber die relativen MausPosition zu Panel B übergeben. Ich müsste also noch umrechnen. Das will ich mir ersparen.
 

Neue Themen


Zurück
Oben