PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MouseListener + MouseMotionListener - JAVA


instinct
2009-03-27, 16:08:07
Ich registriere beim Mausklick einen MouseMotionListener und bei MouseReleased entferne ich den MouseMotionListener wieder.

Ziel: Mit gedrückten Mausknopf kann man ein Objekt rotieren. Nun ist es aber so, dass ich keine MouseMotion-Events empfange, solange der Mausknopf gedrückt ist.

Frage: Ist es irgendwie möglich, dass ich gleichzeitig auf diese beiden Events reagieren kann, um obiges umzusetzen ?

maximAL
2009-03-27, 21:33:49
Warum nicht über MouseDrag?

Dr.Doom
2009-03-27, 23:11:55
Ich registriere beim Mausklick einen MouseMotionListener und bei MouseReleased entferne ich den MouseMotionListener wieder.

Ziel: Mit gedrückten Mausknopf kann man ein Objekt rotieren. Nun ist es aber so, dass ich keine MouseMotion-Events empfange, solange der Mausknopf gedrückt ist.

Frage: Ist es irgendwie möglich, dass ich gleichzeitig auf diese beiden Events reagieren kann, um obiges umzusetzen ?Vielleicht geht das nicht, weil das "Mousepressed"-Ereignis vor dem Registrieren des MouseMotionListeners stattgefunden hat. Der MouseMotionListener bekommt den Tastendruck, der ja schon vorbei ist, nicht mehr mit, um dann auf "MouseDragged" reagieren zu können.

mouseDragged: "Invoked when a mouse button is pressed on a component and then dragged." (Quelle (http://java.sun.com/j2se/1.4.2/docs/api/java/awt/event/MouseMotionListener.html))


Reine Vermutung, da ich immer beide Listener sofort registriere und es nicht nur bei Bedarf nachhole bzw auch wieder rückgängig mache.

instinct
2009-03-28, 13:36:16
Das war jetzt zu einfach :)

Vielen dank es funktioniert!