Les Contrôles

Une des meilleures nouveautés de AutoIt v3 est la possibilité de travailler directement sur certains types de Contrôles de fenêtre.  Pratiquement tout ce que vous voyez dans une fenêtre est un type contrôle : Bouton, liste déroulante, champ d'édition, texte statique sont tous des contrôles.  En fait, Le Bloc-notes n'est qu'un gros contrôles "d'édition" !   Parce que AutoIt travaille directement sur les contrôles, ils fournissent un moyen plus fiable d'automatiser les tâches, plutôt que d'envoyer des combinaisons de touches.

 

Note : AutoIt ne fonctionne qu'avec les contrôles standards de Microsoft Windows. Certaines applications écrivent leurs propres contrôles personnalisés, qui ressemblent à des contrôles standard MS mais qui resistent à l'automation. A vous d'essayer !

 

En utilisant AutoIt Window Info vous pouvez bouger votre souris sur une fenêtre qui vous intéresse et vous obtiendrez des informations sur le contrôle qui se trouve sous le curseur de la souris. 

Une description spéciale peux être utilisée comme le paramètre controlID utilisé dans la plupart des fonction de Control...(). Cette description peux être utilisée pour identifier un contrôle par les propriétés suivantes :

Une ou plusieurs propriétées peuvent être utilisées comme paramètre de controlID dans une commande comme ceci :

[PROPERTY1:Value1; PROPERTY2:Value2]

Note : Si ce format spécial n'est pas utilisé alors le paramètre est considéré comme Control ID (Si numérique) ou la ClassnameNN/texte du contrôle (Si c'est une chaîne). bien que le format spécial est plus complex que ces méthodes, il y à moins d'ambiguïté.

Si une valeur doit contenir un ";" il doit être doublé.

 

Exemple : Envoyer du texte au premier contrôle Edit dans le bloc-note de Windows.

ControlSend("Sans titre - Bloc-notes", "", "[CLASS:Edit; INSTANCE:1]", "Voici un peut de texte")

ou

ControlSend("Sans titre - Bloc-notes", "", "[CLASSNN:Edit1]", "Voici un peut de texte")

or

ControlSend("Sans titre - Bloc-notes", "", "Edit1", "Voici un peut de texte")

 

Exemple : Cliquer sur le contrôle ID 254 dans "Ma Fenêtre"

ControlClick("Ma Fenêtre", "", "[ID:254]")

ou

ControlClick("Ma Fenêtre", "", 254)

 

Exemple : Cliquer la deuxième instance d'un contrôle "Button" contenant le texte "Fin"

ControlClick("Ma Fenêtre", "", "[CLASS:Button; TEXT:Fin; INSTANCE:2]")

 

 

Handle (HWND) de contrôle

En utilisant la fonction ControlGetHandle, vous pouvez déterminer le Handle ou HWND d'un contrôle. Un handle est un identifiant unique fournit par Windows aux contrôles. Le handle change chaque fois que le contrôle est créer. Cette méthode d'accés aux contrôles est généralement destiné aux utilisateurs habitués à la manipulation des handles.

 

 

Regardez du côté de Référence de Fonction \ Manipulations de Fenêtre \ Contrôles pour obtenir la liste des fonctions qui compatible avec les contrôles.