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

Publié par Sylvio dans tuto

J'ai découvert récemment ElRTE (couplé à  ElFinder) qui a l'air pas mal.

Publié par Fobec dans tuto

Bonjour,
est-ce que l'ecart entre 2 mesures est important ?
Un serveur web est loin d'une horloge suisse ;-) En fonction de la charge du serveur, de la mise en cache et du contenu du scr...

Publié par Kader dans java

Tres interessant. Merci Bien! Est ce possible de mettre la couleur sur toute la ligne au lieu de la cellule?

Publié par brayan dans logiciel

je vous retour modem ip pour configury net firwell

Publié par OmegaPlatypus dans java

Dans mon cas, plusieurs lettres etaient repetes plusieurs fois, dont la derniere a l'indfiniment. En ajoutant robot.keyReleaseKeyEvent.VK_A, robot.keyReleaseKeyEvent.VK_X, etc. apres chacune des frap...