Java Robot mouse funktioniert nur auf Notebook nicht.

henny

Mitglied
Hi,

hab ein kleines Problem. In meinem Programm werden diese beiden Funktionen benutzt:

java.awt.Robot mousePress & mouseRelease
Robot (Java 2 Platform SE v1.4.2)
Robot (Java 2 Platform SE v1.4.2)

Meine Funktion:
Java:
 public void mouseClick() {
        System.out.println("klicke");   //gucken ob die Funktion wirklich aufgerufen wird
        try {
            this.robot.mousePress(InputEvent.BUTTON1_MASK);
            this.robot.mouseRelease(InputEvent.BUTTON1_MASK);
        }catch(Exception e){
            System.err.println("error beim klicken "+e);
            e.printStackTrace();
        }
    }

Der Mauszeiger wird vorher natürlich bewegt (andere Funktion) und sobald die Maus an der richtigen Stelle ist, wird meine mouseClick() Funktion aufgerufen. Hab ich auch schon genauso auf verschiedenen Rechnern benutzt.
Nun gehts aber an einem Notebook nicht. Das Bewegen der Maus funktioniert tadellos, nur das Klicken nicht.

Windows7 64bit, java version 1.7.0.
Keine Exception, nichts.


Kann sich das irdgendwer erklären? Braucht ihr noch mehr Infos?
Freue mich über jeden Denkanstoß!

Danke für die Aufmerksamkeit.
 
Zuletzt bearbeitet:
Hab ich auch schon genauso auf verschiedenen Rechnern benutzt.
Meinst du mit genauso, dass du genau dieses Programm schon auf einem anderen Rechner ausgeführt hast? Wenn nein, dann mach das mal. Ich würde jetzt spontan darauf tippen dass der Mausklick durchaus funktioniert, nur dass dann nicht das passiert was du erwartest. Dass der Robot den Zugriff hat sieht man ja daran dass er die Maus bewegt (und du offensichtlich keine AWTException beim Erstellen des Robots bekommen hast)
 
Hi,
Danke für deine Antwort.
Ich habe genau dieses Programm auf anderen Rechnern benutzt. Auf drei Rechnern die .jar gestartet, auf allen gehts.

Nur auf dem Notebook geht es nicht, auch kein Rechtsklick.
Hab mal zur Sicherheit das Touchpad deaktiviert, aber half auch nichts.
 
Okay, und hast du schon herausgefunden ob nur dein Programm nicht funzt oder ob generell der Mausklick nicht funktioniert? Heisst, wenn du testweise ihn mal zB auf den Windows Button oder sonst irgendwo außerhalb deiner Applikation bewegst, passiert dann beim Klick auch nix?

Wenn nein, try this:
Java:
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); // vs BUTTON1_MASK
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);

Wird zwar zu 99.99% nichts bringen, aber hey who knows...

Weitere Verzweiflnugsschreie:
- ein kurzes Delay zwischen press und release. Wer weiß, vllt ist das für deinen Lappi (Netbook?) zu schnell..
- andere Maus?! (Zwecks Treiber)

An Win7 x64 und/oder jdk7 liegt es zumindest nicht, denn das hab ich auch und bei mir funktioniert der Robot.
 
Vielen Dank für die Hinweise, hab leider erst morgen wieder Zugriff auf das Notebook.

Das mit dem Delay ist vielleicht eine gute Idee, hat mir bei Microcontrollern schon sehr oft geholfen, aber die hatten dann meist 4-8 MHz. 😉

An die andere Maskierung hatte ich auch schon gedacht.
Werd es morgen mal probieren!
 

Neue Themen


Zurück
Oben