Conditions
Une condition permet à une action de décider. Un bloc Si n'exécute les étapes qu'il contient que si sa condition est vraie ; un bloc Si… sinon… exécute un ensemble d'étapes ou l'autre.
Ajouter un bloc Si
- Sélectionnez l'étape que le bloc doit suivre (ou aucune étape, pour l'ajouter à la fin).
- Cliquez sur Condition / boucle et choisissez Si… ou Si… sinon….
Si… ajoute deux lignes, Si et Fin si. Si… sinon… ajoute Si, Sinon et Fin si. La ligne Si est sélectionnée : l'étape suivante que vous ajoutez va donc dans le bloc. Les étapes entre Si et Sinon s'exécutent quand la condition est vraie ; les étapes entre Sinon et Fin si s'exécutent quand elle est fausse. L'action continue ensuite après Fin si.
Les blocs peuvent se trouver à l'intérieur d'autres blocs. Il n'existe pas de « sinon si » : placez un autre bloc Si dans la partie Sinon.
La condition
Sélectionnez la ligne Si pour modifier sa condition. Vérifier choisit l'un de trois types :
Les champs que vous remplissez pour un type sont conservés pendant que vous en essayez un autre, mais seul le type choisi ① est enregistré.
Comparer deux valeurs
Valeur, Comparaison et Comparée à. Chaque valeur est tapée, une $variable, ou une lecture
choisie dans le menu des valeurs du champ, comme Texte du Presse-papiers ou Fenêtre cible
(Choisir une valeur dans le menu). Les deux champs proposent toutes les
lectures. Taper le nom de script d'une lecture avec des parenthèses vides, comme ClipboardGetText(),
revient à la choisir. Les comparaisons sont est égale à (==), est différente de (!=), est
inférieure à (<), est au plus (<=), est supérieure à (>) et est au moins (>=).
Comment une valeur tapée est lue : un nombre (comme 3 ou 2.5) est un nombre, true ou false est vrai
ou faux, une constante nommée (comme MouseButton.Right) est son nombre, et tout
le reste est du texte. Vous ne pouvez donc pas comparer au texte « 3 » ; comparez à une variable qui le
contient.
Les règles :
- Deux textes ne sont égaux que s'ils correspondent exactement, casse comprise.
- Deux nombres sont comparés par leur valeur, entiers ou non :
5est égal à5.0. - Deux fenêtres sont égales quand il s'agit de la même fenêtre.
- Des valeurs de types différents ne sont jamais égales : le texte « 5 » n'est pas égal au nombre 5.
- est inférieure à et les autres comparaisons d'ordre fonctionnent sur deux nombres, ou sur deux textes (dans l'ordre des codes de caractères, si bien que « Z » vient avant « a »). Toute autre paire donne faux pour les quatre.
Ce sont les règles du langage de script ; voir Règles des types mélangés.
Le résultat d'une fonction intégrée
La condition exécute une fonction intégrée et utilise ce qu'elle renvoie. Choisir une fonction intégrée… ouvre la liste de toutes les fonctions intégrées (Ajouter et organiser des étapes) ; choisissez-en une et cliquez sur Utiliser cette fonction intégrée. Ses champs apparaissent alors en dessous, comme pour toute étape. Tant qu'aucune fonction n'est choisie, le champ indique Choisissez la fonction intégrée dont le résultat est vérifié.
Les fonctions prévues pour cela ont généralement Is ou Contains dans leur nom, comme La fenêtre
est-elle agrandie (WindowIsMaximized) ou Le titre contient-il le texte (WindowContainsTitle), et
renvoient vrai ou faux. Tout autre résultat compte comme vrai ou faux selon les règles ci-dessous.
Un champ de la fonction de la condition ne peut contenir un appel de fonction intégrée que par l'intermédiaire d'une variable, comme pour toute étape ; Placer dans une variable ajoute l'étape au-dessus du Si (Paramètres des étapes).
Une valeur ou une variable
Valeur contient une valeur, généralement une $variable, ou une lecture de son menu des valeurs,
comme ci-dessus. La condition est vraie quand la valeur compte comme vraie :
| Type | Compte comme vrai quand |
|---|---|
| Vrai ou faux | elle est vraie |
| Nombre entier, Nombre | elle n'est pas 0 |
| Texte | il n'est pas vide |
| Fenêtre | c'est une fenêtre (une étape qui n'a rien trouvé ne renvoie pas de fenêtre) |
C'est ainsi que vous vérifiez « l'étape a-t-elle trouvé quelque chose » : enregistrez le résultat de l'étape, puis testez la variable. Voir Types de valeurs.
Inverser le résultat
Inverser le résultat (not) ② transforme vrai en faux et faux en vrai. Utilisez-le pour « si la fenêtre n'est pas agrandie » avec Le résultat d'une fonction intégrée et La fenêtre est-elle agrandie.
S'arrêter plus tôt
Arrêter les étapes, depuis le menu Condition / boucle, met fin à l'action à cet endroit ; les étapes suivantes ne s'exécutent pas. Placez-le dans un bloc Si pour ne s'arrêter que dans certains cas.
Sauter à une étape
La forme texte des étapes possède aussi une forme de si « aller à l'étape », qui saute à une autre étape par son numéro. La liste des étapes ne peut pas l'afficher. Une action qui l'utilise ne peut être modifiée que sous forme de texte, dans la vue du code (Des étapes au script), et l'éditeur l'indique (Problèmes). Utilisez plutôt des blocs chaque fois que possible.