mouseMotionListener zu langsam

MOEP_BIBER

Aktives Mitglied
Hey Leute,
ich wollte heute ein Programm schreiben, dass meine Maus in einem Fenster sozusagen gefangen hält indem es die Maus immer wieder in die Mitte bewegt wenn man sich in Nähe des Randes aufhält.

Java:
					if (e.getX() <20 || e.getX() > 330 || e.getY() <20 || e.getY()>210){
					    try {
						Robot robot = new Robot();
						robot .mouseMove(150,120);
						} catch (AWTException e1) {
							e1.printStackTrace();
						}
					}
Mit dem Code gibt es keine Probleme, aber der MotionListener ist zu langsam.
D.h. er guckt zu selten wo die Maus sich gerade befindet und deshalb kann man durch eine schnelle Mausbewegung aus dem Fenster abhaun.

Gibt es ne Möglichkeit den MotionListener zu beschleunigen?

MfG Biber
 
Versuch doch mouseExited abzufangen und dann deinen Cursor zurückzusetzten. Mit schnellen Bewegungen kannst du das mouseMoved immer außer Gefecht setzen.
Natürlich könnte man noch dein immer wieder neues Erzeugen des Robots außerhalb gestalten, aber das verringert wohl nur das Problem und löst es nicht.
 
das mit mouse exited funktioniert gut 😉
hab jetz noch nen windowlistener hinzugefügt der das programm wieder öffnet wenns geschlossen wird
hehe^^
 

Zurück
Oben