Publié le 06/01/2011
Auteur Axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Deplacer le curseur a l'ecran avec AWT robot

La class AWT.Robot contient les fonctions pour piloter la souris et le clavier. Bien entendu, les fonctions de cette librairie fonctionnent sur toutes les plate-formes que ce soit Linux, Windows ou encore MacOs. Commencons par déplacer le curseur de la souris avec robot.mouseMove pour illustrer les possibilités d'automatisation de tache.

Déplacer le curseur de la souris

L'exemple MouseSignZorro est une application console simulant le signature de Zorro à l'écran, c-a-d faire bouger le curseur en suivant un Z.
import java.awt.AWTException;
import java.awt.Robot;
 
/**
 * Déplacer le curseur de la souris sur l'écran
 * http://www.fobec.com/java/969/deplacer-curseur-ecran-avec-awt-robot.html
 * Axel 2010
 */
public class MouseSignZorro {
 
    public MouseSignZorro() throws AWTException {
        Robot robot = new Robot();
        /**
         * Fixer le delai entre chaque mouvement à 500 ms
         */
        robot.setAutoDelay(50);
        /**
         * Appeler OnIdle après le déplacement de la souris
         */
        robot.setAutoWaitForIdle(false);
 
        /**
         * Barre du haut
         */
        for (int i = 0; i < 20; i++) {
            robot.mouseMove(300+(20*i), 400);
        }
        /**
         * Diagonale
         */
        for (int i = 0; i < 20; i++) {
            robot.mouseMove(700-(20*i), 400+(20*i));
        }
        /**
         * Barre du bas
         */
        for (int i = 0; i < 20; i++) {
            robot.mouseMove(300+(20*i), 800);
        }
 
        /**
         * Quitter l'application
         */
        System.exit(0);
    }
 
    public static void main(String[] args) throws AWTException {
        MouseSignZorro mouseCatchMe = new MouseSignZorro();
    }
}

Bien entendu pour visualiser l'automatisation avec les fonctions de awt.robot, il faut lacher la souris dès que le jar est lancé.

De la manière, un programme JAVA peut envoyer une suite de caractère dans un éditeur de texte, par exemple Notepad. En contrôlant le clavier et la souris d'un poste de travail, on peut automatiser des taches voire meme construire un bot de jeu.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - sources
Mise a jour
06/01/2011
Visualisation
vu 2344 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par snoop dans java

simple, rapide et effectif du premier coup.
Merci!

Publié par Etiazam dans php5

Si je peux me permettre, il manque l'incrementation dans les deux boucles, telles qu'elles sont presentees elles font tourner le navigateur en rond, il faut donc ajouter
for ($x=0;$x<50;$x...

Publié par Daxentuut dans java

Avec les imports c'est mieux :

import java.awt.AWTException
import java.awt.Robot
import java.awt.event.KeyEvent
import java.io.IOException
import java.util.logging.Level
import...

Publié par beeker dans tuto

Le script fonctionne bien en hebergement mutua1isee

Publié par neuro dans CMS

exemple edifaint et trés interessant