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 2451 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Patrice dans CMS

Concernant la commande ShellExecute :

Si vous voulez lancer un programme dont le nom est contenu dans une propriété text,
caption, items bref d\'un string ... n'oubliez pas de transfor...

Publié par Anis Hidouri dans java

Très bon exemple même si le drivers jdbc comporte quelques erreurs !!!

Publié par Pierrot dans CMS

Je présume que c'est plutot application.terminate;, le clavier à fourcher, ça m'arrive souvent.
@+

Publié par Lathois dans CMS

super impec <br>ca marche du feu de ZEUS<br>depuis le temps que je cherchais ca<br>j ai enfin trouve<br><br>merci Athois

Publié par Fobec dans tuto

Pour la distribution Linux Mint 12 Lisa, saisir dans le terminal:
# sudo service lightdm restart