MouseMotionListener zu lahm?

Status
Nicht offen für weitere Antworten.

KSG9|sebastian

Top Contributor
Hi Leute,

ich hab mir ne eigene GUI-Komponente geschrieben, die eigentlich nur 3 Striche malt. Die Komponente hat nen MouseMotionListener, der abfrägt, ob sich die Maus innerhalb eines bestimmten Bereichs der Komponente befindet. Wenn ja, dann wird die Komponente blau hinterlegt.
Das ganze sieht so aus:

Code:
public void mouseMoved(MouseEvent m){
   if(m.getX() < 4 || m.getX() > super.getWidth() -4 || m.getY() < (super.getHeight() / 2)/2 || m.getY() >     (super.getHeight() / 2)/2 + super.getHeight()/2){
      isOver = true;
   }
   else{
      isOver = false;
   }
   repaint();
}

public void paintComponent(Graphics g){
//standartaufrufe der oberklasse..
   if(isOver){
     g.setColor(Color.blue);
     g.fillRect(0,0,super.getWidth(), super.getHeight());
   }
   else{
     g.setColor(Color.lightGray);
     g.fillRect(0,0,super.getWidth(), super.getHeight());
   }
}

Wenn man die Maus nach oben oder unten rausbewegt funktioniert alles, wenn ich aber die maus relativ schnell rechts oder links aus der Komponente bewege, dann reagiert das ganze zu langsam und der Hintergrund wird von blau NICHT mehr auf hellgrau zurückgeschrieben..kann ich das ganze irgendwie ändern?

Ich könnte dem Frame nen MouseMotionListener hinzufügen, aber dann hab ich mehr stress mit Abfragen welche Komponente u.s.w.
 
B

Beni

Gast
Ich würde einen MouseListener empfehlen, die Methode "mouseExited" dürfte für dich interessant sein.
 

KSG9|sebastian

Top Contributor
ja...hab ich schon versucht, aber irgendwo gab es ein problem....AHH genau :
Wenn dann benötige ich nen MouseListener UND einen MouseMotionListener, und zwar aus folgendem Grund:

Nur ein bestimmter Teil meiner GUI-Komponente soll gefärbt werden und zwar dann wenn die Maus in einem bestimmten Bereich der Komponente ist, d.h. ich benötige auch ne Funktion mouseMoved..aber danke..hab da ne Idee ;)
 

KSG9|sebastian

Top Contributor
Wen es interessiert:

Ich benutz den MouseListener um zu überprüfen ob die Maus die Komponente verlassen hat und nen MouseMoutionListener (mouseMoved..) um zu überprüfen, in welchem Bereich sich die Maus befindet
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Arif Swing MouseMotionListener liefert falsche Werte ? AWT, Swing, JavaFX & SWT 7
L JComponent und MouseMotionListener AWT, Swing, JavaFX & SWT 2
M mouseDragged im MouseMotionListener AWT, Swing, JavaFX & SWT 1
javampir MouseMotionListener rechte Maustaste AWT, Swing, JavaFX & SWT 4
D Swing Objekte bewegen mit MouseMotionListener AWT, Swing, JavaFX & SWT 4
C MouseMotionListener AWT, Swing, JavaFX & SWT 5
C MouseMotionListener fired keine Events mehr wenn in Button AWT, Swing, JavaFX & SWT 2
B MouseMotionListener stotterhafte Ausführung AWT, Swing, JavaFX & SWT 2
M MouseListener/MouseMotionListener AWT, Swing, JavaFX & SWT 2
F AWT MouseMotionListener e.getButton() ist immer 0 unter Linux und Windows AWT, Swing, JavaFX & SWT 6
T MouseMotionListener außerhalb von Frame AWT, Swing, JavaFX & SWT 3
S MouseMotionListener AWT, Swing, JavaFX & SWT 7
J mouseDragged und MouseMotionListener AWT, Swing, JavaFX & SWT 3
M MouseMotionListener oder mouseListener AWT, Swing, JavaFX & SWT 6
J Problem mit eigener Titelleiste und MouseMotionListener AWT, Swing, JavaFX & SWT 2
H MouseMotionListener#mouseDragged() in großen Abständen AWT, Swing, JavaFX & SWT 7
M Java, Swing: MouseMotionListener AWT, Swing, JavaFX & SWT 19
F MouseMotionListener und Parameter? AWT, Swing, JavaFX & SWT 4
B MouseMotionListener zu träge? AWT, Swing, JavaFX & SWT 3
L MouseMotionListener AWT, Swing, JavaFX & SWT 2
N "globaler" MouseListener (+MouseMotionListener) AWT, Swing, JavaFX & SWT 4
C JPopUpMenu in einem JTree ist lahm AWT, Swing, JavaFX & SWT 14
R modaler JDialog legt anwendungscode lahm AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen


Oben