Signatures des fonctions intégrées
Chaque fonction intégrée, regroupée par domaine. Chaque ligne indique les noms et les types des paramètres, dans l'ordre, ainsi que le type renvoyé. Simple signale les fonctions intégrées que propose le mode Simple de l'interface de configuration. Exemples filtre la bibliothèque d'exemples sur les scripts qui appellent cette fonction intégrée. L'info-bulle de saisie semi-automatique de l'éditeur affiche les mêmes signatures.
AutoHotkey
AutoHotkeyExecuteScript
AutoHotkeyExecuteScript(script: Text) → Integer · Simple
Exécute du code AutoHotkey v2 avec le programme AutoHotkey défini dans les paramètres et attend qu'il se termine. Le contexte du déclencheur est transmis sous forme de variables, et les lignes de sortie sont affichées avec le préfixe AHK:.
Paramètres
script: Text— Le texte du script AutoHotkey v2 à exécuter. Arrêter l'action met fin au processus AutoHotkey.
Renvoie
Le code de sortie d'AutoHotkey, ou -1 si la prise en charge d'AutoHotkey est désactivée, si le chemin de son programme n'est pas défini ou est introuvable, ou si le programme n'a pas pu démarrer.
1 exemple: Passer la main à AutoHotkey
Capture
CaptureSaveRegion
CaptureSaveRegion(fileName: Text, x: Integer, y: Integer, width: Integer, height: Integer) → Bool
Capture un rectangle de l'écran et l'enregistre dans un fichier image. Retire d'abord de l'écran le tracé de geste et l'indication de cette application, en attendant jusqu'à 250 millisecondes.
Paramètres
fileName: Text— Chemin du fichier image à écrire. Son extension (.bmp, .png, .jpg ou .jpeg) détermine le format. Un fichier existant est remplacé ; les dossiers manquants ne sont pas créés.x: Integer— Bord gauche du rectangle, en pixels d'écran.y: Integer— Bord supérieur du rectangle, en pixels d'écran.width: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.height: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.
Renvoie
true si le fichier image a été écrit ; false si width ou height n'est pas positif, si la capture a échoué ou si le fichier n'a pas pu être écrit. Un fileName qui ne se termine pas par .bmp, .png, .jpg ou .jpeg arrête le script avec une erreur.
1 exemple: Capturer la zone que vous avez entourée
CaptureShowImage
CaptureShowImage(fileName: Text) → Bool
Affiche un fichier image à sa taille d'origine dans une fenêtre d'aperçu sans bordure, toujours au premier plan, centrée sur l'écran situé sous le curseur. Faites-la glisser pour la déplacer, double-cliquez pour la fermer, cliquez avec le bouton droit pour Copier, Enregistrer et Fermer.
Paramètres
fileName: Text— Chemin du fichier .bmp, .png, .jpg ou .jpeg à afficher.
Renvoie
true si l'image a été chargée et que sa fenêtre d'aperçu s'ouvre ; false si le fichier est manquant ou n'est pas une image lisible. Un fileName qui ne se termine pas par .bmp, .png, .jpg ou .jpeg arrête le script avec une erreur.
CaptureShowRegion
CaptureShowRegion(x: Integer, y: Integer, width: Integer, height: Integer) → Bool
Capture un rectangle de l'écran et affiche la copie dans une fenêtre d'aperçu sans bordure, toujours au premier plan, placée exactement sur cette zone. Retire d'abord le tracé de geste et l'indication de cette application, en attendant jusqu'à 250 millisecondes.
Paramètres
x: Integer— Bord gauche du rectangle, en pixels d'écran.y: Integer— Bord supérieur du rectangle, en pixels d'écran.width: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.height: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.
Renvoie
true si la capture a réussi et que sa fenêtre d'aperçu s'ouvre ; false si width ou height n'est pas positif ou si l'écran n'a pas pu être capturé.
Clipboard
ClipboardClear
ClipboardClear() → Bool
Vide le Presse-papiers en supprimant le texte, les images et tous les autres formats, sans rien y placer de nouveau.
Paramètres
Aucun paramètre.
Renvoie
true si le Presse-papiers a été vidé ; false si un autre programme le maintenait occupé.
1 exemple: Mettre en majuscules le texte sélectionné
ClipboardCopySelection
ClipboardCopySelection(timeoutMs: Integer) → Text · Simple
Envoie Ctrl+C à la fenêtre active et renvoie le texte copié, après avoir attendu que les touches Ctrl, Maj, Alt et Windows soient relâchées. La copie remplace le contenu du Presse-papiers ; utilisez ClipboardSave et ClipboardRestore pour le conserver.
Paramètres
timeoutMs: Integer— Durée totale d'attente du relâchement des touches et de l'arrivée de la copie, en millisecondes, de 0 à 60000. Les valeurs supérieures comptent comme 60000. 1000 convient à la plupart des programmes.
Renvoie
Le texte copié, ou un texte vide si les touches sont restées enfoncées, si rien n'a été copié (aucune sélection) ou si la copie ne contient aucun texte avant l'expiration de timeoutMs.
1 exemple: Rechercher sur le web le texte sélectionné
ClipboardGetHtml
ClipboardGetHtml() → Text
Renvoie le HTML présent dans le Presse-papiers, comme celui qu'un navigateur y place lorsque vous copiez une partie d'une page web.
Paramètres
Aucun paramètre.
Renvoie
Le fragment HTML copié sans l'en-tête HTML du Presse-papiers, ou un texte vide si le Presse-papiers ne contient pas de HTML ou est occupé.
ClipboardGetRtf
ClipboardGetRtf() → Text
Renvoie le texte enrichi (RTF) présent dans le Presse-papiers, comme celui qu'un traitement de texte y place lorsque vous copiez du texte mis en forme.
Paramètres
Aucun paramètre.
Renvoie
Le balisage RTF sous forme de texte, ou un texte vide si le Presse-papiers ne contient pas de RTF ou est occupé.
ClipboardGetSequenceNumber
ClipboardGetSequenceNumber() → Integer
Renvoie un nombre que Windows modifie chaque fois que le contenu du Presse-papiers change. Lisez-le avant une opération censée copier, puis comparez pour savoir que la copie est arrivée.
Paramètres
Aucun paramètre.
Renvoie
Le numéro de séquence actuel du Presse-papiers. Seul un changement du numéro a un sens, pas sa valeur elle-même.
ClipboardGetText
ClipboardGetText() → Text · Simple
Renvoie le texte brut actuellement présent dans le Presse-papiers. La mise en forme, les images et les fichiers du Presse-papiers sont ignorés.
Paramètres
Aucun paramètre.
Renvoie
Le texte du Presse-papiers, ou un texte vide si le Presse-papiers ne contient aucun texte ou si un autre programme le maintenait occupé.
6 exemples: Extraire une valeur d'un texte copié avec une expression régulière, Compter les mots du Presse-papiers, Joindre les lignes du Presse-papiers en une seule, La date du jour, et un nom de fichier horodaté, Mettre en majuscules le texte sélectionné, Rechercher la sélection sur le web
ClipboardLoadImage
ClipboardLoadImage(path: Text) → Bool
Charge un fichier image et le place dans le Presse-papiers, en remplaçant le contenu actuel, prêt à être collé dans d'autres programmes. Les zones transparentes d'un PNG deviennent blanches.
Paramètres
path: Text— Chemin complet du fichier image, se terminant par .bmp, .png, .jpg ou .jpeg. Toute autre extension arrête le script avec une erreur.
Renvoie
true si l'image est dans le Presse-papiers ; false si le fichier est manquant, n'est pas une image lisible ou si le Presse-papiers est occupé.
ClipboardPasteReplacementText
ClipboardPasteReplacementText(text: Text) → Bool · Simple
Place du texte dans le Presse-papiers et envoie Ctrl+V pour le coller dans la fenêtre active. N'attend pas que le collage soit effectué : attendez donc brièvement avec UtilityWait avant ClipboardRestore.
Paramètres
text: Text— Le texte à coller.
Renvoie
true si le Presse-papiers a été défini et Ctrl+V envoyé ; false si le Presse-papiers était occupé ou si Windows a bloqué les frappes.
2 exemples: Remplir un modèle et le coller, Mettre en majuscules le texte sélectionné
ClipboardRestore
ClipboardRestore() → Bool
Rétablit le contenu du Presse-papiers enregistré par le dernier ClipboardSave de cette exécution du script, dans tous les formats. Sans ClipboardSave antérieur dans cette exécution, vide le Presse-papiers.
Paramètres
Aucun paramètre.
Renvoie
true si tout ce qui avait été enregistré a été rétabli ; false si le Presse-papiers était occupé ou si un format n'a pas pu être restauré.
5 exemples: Remplir un modèle et le coller, Rechercher sur le web le texte sélectionné, Mettre en majuscules le texte sélectionné, Rechercher la sélection sur le web, Ne laisser qu'une action à la fois exécuter une section
ClipboardSave
ClipboardSave() → Bool
Enregistre une copie de tout le contenu du Presse-papiers, dans tous les formats, afin que ClipboardRestore puisse le rétablir plus tard dans la même exécution du script. Un deuxième appel remplace la copie enregistrée.
Paramètres
Aucun paramètre.
Renvoie
true si le Presse-papiers a été lu ; false si un autre programme le maintenait occupé.
5 exemples: Remplir un modèle et le coller, Rechercher sur le web le texte sélectionné, Mettre en majuscules le texte sélectionné, Rechercher la sélection sur le web, Ne laisser qu'une action à la fois exécuter une section
ClipboardSaveImage
ClipboardSaveImage(path: Text) → Bool
Enregistre l'image du Presse-papiers dans un fichier, au format désigné par l'extension du fichier, par exemple une capture prise avec Impr. écran. Un fichier existant est remplacé.
Paramètres
path: Text— Chemin complet du fichier à écrire, se terminant par .bmp, .png, .jpg ou .jpeg. Toute autre extension arrête le script avec une erreur.
Renvoie
true si le fichier a été écrit ; false si le Presse-papiers ne contient aucune image ou si le fichier n'a pas pu être écrit.
1 exemple: Enregistrer une image copiée dans un fichier
ClipboardSetHtml
ClipboardSetHtml(html: Text) → Bool
Place un fragment HTML dans le Presse-papiers, en remplaçant le contenu actuel, afin que le collage dans un e-mail ou un traitement de texte conserve la mise en forme. Une copie en texte brut, sans les balises, est aussi ajoutée pour les programmes qui ne collent que du texte.
Paramètres
html: Text— Le fragment HTML à placer, par exemple du texte <b>gras</b>. N'ajoutez pas l'en-tête HTML du Presse-papiers ; il est ajouté pour vous.
Renvoie
true si le HTML et sa copie en texte brut ont été placés dans le Presse-papiers ; false si le Presse-papiers était occupé.
ClipboardSetRtf
ClipboardSetRtf(rtf: Text) → Bool
Place du texte enrichi (RTF) dans le Presse-papiers, en remplaçant le contenu actuel, afin que le collage dans WordPad, Word ou Outlook conserve la mise en forme. Une copie en texte brut des mots est aussi ajoutée pour les programmes qui ne collent que du texte.
Paramètres
rtf: Text— Un document RTF complet sous forme de texte. Tout caractère peut être saisi directement ; les caractères hors de l'ASCII simple sont écrits pour vous sous forme de séquences d'échappement Unicode RTF.
Renvoie
true si le RTF et sa copie en texte brut ont été placés dans le Presse-papiers ; false si le Presse-papiers était occupé.
ClipboardSetText
ClipboardSetText(text: Text) → Bool · Simple
Place du texte dans le Presse-papiers, en remplaçant ce qui s'y trouve, prêt à être collé dans n'importe quel programme.
Paramètres
text: Text— Le texte à placer dans le Presse-papiers.
Renvoie
true si le texte a été placé dans le Presse-papiers ; false si un autre programme maintenait le Presse-papiers occupé.
2 exemples: Extraire une valeur d'un texte copié avec une expression régulière, Joindre les lignes du Presse-papiers en une seule
Context
ContextGetActionName
ContextGetActionName() → Text
Renvoie le nom de l'action en cours d'exécution. Un événement global renvoie Global_Event_ suivi de l'identifiant de l'événement, par exemple Global_Event_release.
Paramètres
Aucun paramètre.
Renvoie
Le nom de l'action, un nom Global_Event_ pour un événement global, ou un texte vide dans un script de minuteur, de surveillance de dossier ou de moniteur série.
1 exemple: Tout ce que sait le contexte de déclenchement
ContextGetApplicationName
ContextGetApplicationName() → Text
Renvoie le nom du groupe d'applications dont l'action est en cours d'exécution, pour une action déclenchée par un geste, un raccourci clavier ou une expansion de texte.
Paramètres
Aucun paramètre.
Renvoie
Le nom du groupe d'applications (généralement Global pour le groupe global), ou un texte vide pour un événement global ou un script de minuteur, de surveillance de dossier ou de moniteur série.
4 exemples: Remplir un modèle et le coller, Tout ce que sait le contexte de déclenchement, Laisser passer un dessin non reconnu, Ajouter à un fichier journal
ContextGetBoundingBoxHeight
ContextGetBoundingBoxHeight() → Integer
Renvoie la hauteur du rectangle englobant l'ensemble du geste tracé, en pixels. En dehors d'un geste, renvoie 0.
Paramètres
Aucun paramètre.
Renvoie
La hauteur en pixels, ou 0 en dehors d'un geste.
2 exemples: Tout ce que sait le contexte de déclenchement, Capturer la zone que vous avez entourée
ContextGetBoundingBoxWidth
ContextGetBoundingBoxWidth() → Integer
Renvoie la largeur du rectangle englobant l'ensemble du geste tracé, en pixels. En dehors d'un geste, renvoie 0.
Paramètres
Aucun paramètre.
Renvoie
La largeur en pixels, ou 0 en dehors d'un geste.
2 exemples: Tout ce que sait le contexte de déclenchement, Capturer la zone que vous avez entourée
ContextGetBoundingBoxX
ContextGetBoundingBoxX() → Integer
Renvoie le bord gauche du rectangle englobant l'ensemble du geste tracé, en pixels de l'écran virtuel. En dehors d'un geste, renvoie 0.
Paramètres
Aucun paramètre.
Renvoie
Le bord gauche en pixels de l'écran virtuel, ou 0 en dehors d'un geste.
2 exemples: Tout ce que sait le contexte de déclenchement, Capturer la zone que vous avez entourée
ContextGetBoundingBoxY
ContextGetBoundingBoxY() → Integer
Renvoie le bord supérieur du rectangle englobant l'ensemble du geste tracé, en pixels de l'écran virtuel. En dehors d'un geste, renvoie 0.
Paramètres
Aucun paramètre.
Renvoie
Le bord supérieur en pixels de l'écran virtuel, ou 0 en dehors d'un geste.
2 exemples: Tout ce que sait le contexte de déclenchement, Capturer la zone que vous avez entourée
ContextGetButtonState
ContextGetButtonState() → Text
Indique si un événement global de bouton de souris s'est déclenché à l'appui sur le bouton ou à son relâchement. Seul le script d'un événement global de bouton de souris obtient une valeur.
Paramètres
Aucun paramètre.
Renvoie
'down' pour l'appui, 'up' pour le relâchement, ou un texte vide pour tout autre déclencheur, y compris un geste.
ContextGetControl
ContextGetControl() → Window
Renvoie le contrôle exact visé par le déclencheur, par exemple une zone de texte située sous le geste ou la souris, ou la fenêtre ayant le focus pour un raccourci clavier ou une expansion de texte. Utilisez ContextGetWindow pour sa fenêtre d'application.
Paramètres
Aucun paramètre.
Renvoie
Le contrôle sous forme de Window, ou une fenêtre nulle lorsque le déclencheur n'a pas de fenêtre, comme dans un script de minuteur, de surveillance de dossier, de moniteur série ou Load.
ContextGetGestureName
ContextGetGestureName() → Text
Renvoie le nom du geste tracé pour exécuter cette action. Il s'agit du nom propre du geste, et non de celui de l'action ; voir ContextGetActionName.
Paramètres
Aucun paramètre.
Renvoie
Le nom du geste, ou un texte vide en dehors d'un geste.
2 exemples: Tout ce que sait le contexte de déclenchement, Ajouter à un fichier journal
ContextGetPointCount
ContextGetPointCount() → Integer
Renvoie le nombre de positions du curseur enregistrées le long du geste tracé. Lisez chacune d'elles avec ContextGetPointX et ContextGetPointY.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de points, ou 0 en dehors d'un geste.
3 exemples: Longueur du tracé d'un geste, Tout ce que sait le contexte de déclenchement, Dans quelle direction est allé le tracé ?
ContextGetPointX
ContextGetPointX(index: Integer) → Integer
Renvoie la position horizontale à l'écran d'un point enregistré du geste tracé, en pixels de l'écran virtuel.
Paramètres
index: Integer— Numéro du point, à partir de zéro, de 0 à ContextGetPointCount() moins 1. Le point 0 est l'endroit où le geste a commencé.
Renvoie
La coordonnée x, ou 0 si index est hors limites ou si l'action n'a pas été déclenchée par un geste.
2 exemples: Longueur du tracé d'un geste, Dans quelle direction est allé le tracé ?
ContextGetPointY
ContextGetPointY(index: Integer) → Integer
Renvoie la position verticale à l'écran d'un point enregistré du geste tracé, en pixels de l'écran virtuel.
Paramètres
index: Integer— Numéro du point, à partir de zéro, de 0 à ContextGetPointCount() moins 1. Le point 0 est l'endroit où le geste a commencé.
Renvoie
La coordonnée y, ou 0 si index est hors limites ou si l'action n'a pas été déclenchée par un geste.
2 exemples: Longueur du tracé d'un geste, Dans quelle direction est allé le tracé ?
ContextGetSerialMonitorName
ContextGetSerialMonitorName() → Text
Renvoie le nom du moniteur série dont la ligne reçue a lancé ce script, tel qu'il a été transmis à SerialMonitorCreate. Seul le script d'un moniteur série obtient une valeur.
Paramètres
Aucun paramètre.
Renvoie
Le nom du moniteur, ou un texte vide pour tout autre déclencheur.
ContextGetSerialPortName
ContextGetSerialPortName() → Text
Renvoie le port COM, par exemple COM3, sur lequel la ligne reçue est arrivée. Seul le script d'un moniteur série obtient une valeur.
Paramètres
Aucun paramètre.
Renvoie
Le nom du port, ou un texte vide pour tout autre déclencheur.
ContextGetSerialTextLine
ContextGetSerialTextLine() → Text
Renvoie la ligne de texte arrivée sur le port série qui a lancé ce script, par exemple une mesure de capteur qu'un Arduino a envoyée avec Serial.println. La fin de ligne est supprimée.
Paramètres
Aucun paramètre.
Renvoie
La ligne reçue sans son terminateur, ou un texte vide pour tout autre déclencheur.
2 exemples: Associer les boutons d'un périphérique série à des touches multimédias, Transformer un bouton rotatif Arduino en réglage du volume
ContextGetStrokeButton
ContextGetStrokeButton() → Integer
Renvoie le bouton de souris qui a tracé le geste, ou qui a déclenché un événement global de bouton de souris, sous forme de constante MouseButton : MouseButton.Primary ou MouseButton.Secondary pour les boutons que Windows traite comme un clic gauche et un clic droit, après une éventuelle inversion principal/secondaire, sinon MouseButton.Middle, MouseButton.X1 ou MouseButton.X2. Transmettez-la à MouseClick ou MouseButtonDown pour appuyer sur le même bouton.
Paramètres
Aucun paramètre.
Renvoie
Une valeur MouseButton telle que MouseButton.Secondary, ou -1 pour tout autre déclencheur.
2 exemples: Tout ce que sait le contexte de déclenchement, Brancher selon le bouton du tracé
ContextGetWatchAction
ContextGetWatchAction() → Text
Renvoie ce qui s'est produit dans le dossier surveillé pour lancer ce script : 'created', 'deleted', 'modified', 'renamed-old-name', 'renamed-new-name' ou 'overflow'.
Paramètres
Aucun paramètre.
Renvoie
Le type de modification, ou un texte vide pour tout autre déclencheur. 'overflow' signifie que trop de modifications sont arrivées en même temps et que le dossier doit être vérifié à nouveau.
1 exemple: Surveiller un dossier
ContextGetWatchName
ContextGetWatchName() → Text
Renvoie le nom de la surveillance de dossier qui a lancé ce script, tel qu'il a été transmis à FolderWatchCreate. Seul le script d'une surveillance de dossier obtient une valeur.
Paramètres
Aucun paramètre.
Renvoie
Le nom de la surveillance, ou un texte vide pour tout autre déclencheur.
ContextGetWatchPath
ContextGetWatchPath() → Text
Renvoie le chemin du fichier ou du dossier qui a changé et a lancé ce script de surveillance de dossier, relatif au dossier surveillé.
Paramètres
Aucun paramètre.
Renvoie
Le chemin de l'élément modifié, relatif au dossier surveillé, ou un texte vide pour une modification 'overflow' ou tout autre déclencheur.
1 exemple: Surveiller un dossier
ContextGetWindow
ContextGetWindow() → Window
Renvoie la fenêtre d'application visée par le déclencheur : la fenêtre de niveau supérieur qui contient le contrôle situé sous le geste ou la souris, ou le contrôle ayant le focus pour un raccourci clavier ou une expansion de texte.
Paramètres
Aucun paramètre.
Renvoie
La fenêtre, ou une fenêtre nulle lorsque le déclencheur n'a pas de fenêtre, comme dans un script de minuteur, de surveillance de dossier, de moniteur série ou Load.
16 exemples: Un geste, plusieurs choix, Basculer l'agrandissement de la fenêtre du geste, Épingler une fenêtre au premier plan, Faire varier la transparence d'une fenêtre, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur, Envoyer une fenêtre sur l'écran suivant, Mémoriser et restaurer la position d'une fenêtre, Inspecter les contrôles enfants d'une fenêtre, Masquer une fenêtre dans la zone de notification, Tout ce que sait le contexte de déclenchement, Brancher selon le bouton du tracé, Confiner le curseur à une fenêtre pendant 5 secondes, Changer de comportement tant que Ctrl est maintenue, Une liste conservée dans Storage, Envoyer une fenêtre sur un écran précis, Des extraits comme fonctions réutilisables
ContextRelayGesture
ContextRelayGesture() → Bool
Rejoue le geste tracé sous forme de véritable glissement de souris avec le même bouton le long du même chemin, afin que l'application sous-jacente le reçoive, par exemple pour sélectionner du texte. Les entrées réelles sont retenues pendant le glissement.
Paramètres
Aucun paramètre.
Renvoie
true si tout le glissement a été envoyé ; false en dehors d'un geste ou si Windows a rejeté une partie de l'entrée.
1 exemple: Laisser passer un dessin non reconnu
DateTime
DateTimeFormat
DateTimeFormat(iso: Text, style: Integer) → Text · Simple
Met en forme une date et une heure sous forme de texte lisible dans le format régional de l'utilisateur, ou sous forme de FileStamp triable. Une heure avec Z ou un décalage UTC est d'abord convertie en heure locale.
Paramètres
iso: Text— Une date et une heure au format ISO 8601, telles que DateTimeGetNow les renvoie (2026-10-05T14:05:09-04:00). Une date seule signifie minuit ; sans Z ni décalage, elle est considérée comme une heure locale. Années 1601 à 9999.style: Integer— Une constante DateTimeStyle, telle que DateTimeStyle.ShortDate, DateTimeStyle.LongDateTime ou DateTimeStyle.FileStamp. Toute autre valeur arrête l'action avec une erreur.
Renvoie
Le texte mis en forme, par exemple 20261005-140509 pour DateTimeStyle.FileStamp, ou un texte vide si iso est vide. Un texte qui n'est pas au format ISO 8601 arrête l'action avec une erreur.
1 exemple: La date du jour, et un nom de fichier horodaté
DateTimeGetNow
DateTimeGetNow() → Text · Simple
Renvoie la date et l'heure locales actuelles sous forme de texte ISO 8601, à la seconde près, avec le décalage UTC. Transmettez-les à DateTimeFormat ou DateTimeGetPart.
Paramètres
Aucun paramètre.
Renvoie
Un texte tel que 2026-10-05T14:05:09-04:00, ou un texte vide si Windows ne peut pas indiquer le fuseau horaire.
1 exemple: La date du jour, et un nom de fichier horodaté
DateTimeGetPart
DateTimeGetPart(iso: Text, part: Integer) → Integer
Renvoie une partie d'une date et d'une heure sous forme de nombre : l'année, le mois, le jour, l'heure, la minute, la seconde ou le jour de la semaine, en heure locale.
Paramètres
iso: Text— Une date et une heure au format ISO 8601, telles que DateTimeGetNow les renvoie. Une heure avec Z ou un décalage UTC est convertie en heure locale ; sans eux, elle est considérée comme une heure locale.part: Integer— Une constante DateTimePart, telle que DateTimePart.Hour ou DateTimePart.Weekday. Toute autre valeur arrête l'action avec une erreur.
Renvoie
La valeur de la partie : mois de 1 à 12, heure de 0 à 23, jour de la semaine de 1 (lundi) à 7 (dimanche). -1 si iso est vide. Un texte qui n'est pas au format ISO 8601 arrête l'action avec une erreur.
1 exemple: La date du jour, et un nom de fichier horodaté
Display
DisplayGetMonitorDpiFromPoint
DisplayGetMonitorDpiFromPoint(x: Integer, y: Integer) → Integer
Renvoie la résolution (DPI) que Windows utilise actuellement pour l'écran contenant un point de l'écran. Un point situé hors de tous les écrans utilise l'écran le plus proche.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.
Renvoie
La valeur DPI, par exemple 96 pour une mise à l'échelle de 100 pour cent ou 144 pour 150 pour cent. Si Windows ne peut pas l'indiquer, la valeur DPI du système.
DisplayGetPixelColorFromPoint
DisplayGetPixelColorFromPoint(x: Integer, y: Integer) → Integer
Renvoie la couleur du pixel de l'écran situé à un point, telle qu'elle est actuellement affichée sur l'écran.
Paramètres
x: Integer— Position horizontale du pixel à l'écran, en pixels.y: Integer— Position verticale du pixel à l'écran, en pixels.
Renvoie
La couleur sous forme d'Integer au format 0xRRGGBB (le rouge dans l'octet de poids fort, le bleu dans l'octet de poids faible), ou -1 si le point est hors de tous les écrans ou si l'écran ne peut pas être lu.
1 exemple: Lire la couleur du pixel sous le curseur
DisplayMonitorEnumeratedAll
DisplayMonitorEnumeratedAll() → Integer
Prend un instantané de tous les écrans connectés, classés de gauche à droite puis de haut en bas, que les fonctions intégrées DisplayMonitorGetEnumerated lisent par index. Rappelez-la après une modification des écrans.
Paramètres
Aucun paramètre.
Renvoie
Le nombre d'écrans dans l'instantané. Les index valides vont de 0 à ce nombre moins 1.
2 exemples: Lister les écrans, Envoyer une fenêtre sur un écran précis
DisplayMonitorExistsByName
DisplayMonitorExistsByName(name: Text) → Bool
Vérifie si un écran enregistré par son nom est connecté en ce moment. Utilisez-la avant les fonctions intégrées de rectangle FromName, qui renvoient 0 aussi bien pour un écran absent que pour une vraie coordonnée 0.
Paramètres
name: Text— Un chemin de périphérique d'écran (le choix fiable, issu de DisplayMonitorGetDevicePathFromPoint) ou un nom de modèle tel que DELL U2720Q. Ne respecte pas la casse ; une correspondance exacte de chemin de périphérique l'emporte sur un nom de modèle.
Renvoie
true si un écran connecté correspond au nom ; false si aucun ne correspond ou si name est vide.
DisplayMonitorGetDevicePathFromPoint
DisplayMonitorGetDevicePathFromPoint(x: Integer, y: Integer) → Text
Renvoie le chemin de périphérique de l'écran contenant un point de l'écran : un nom unique à enregistrer et à transmettre plus tard aux fonctions intégrées FromName. Il change si l'écran est branché sur un autre port vidéo.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.
Renvoie
Le chemin de périphérique, ou un texte vide si Windows ne peut pas identifier l'écran. Un point situé hors de tous les écrans utilise l'écran le plus proche.
DisplayMonitorGetEnumeratedDevicePathAt
DisplayMonitorGetEnumeratedDevicePathAt(index: Integer) → Text
Renvoie le chemin de périphérique, un nom unique à enregistrer, d'un écran du dernier instantané DisplayMonitorEnumeratedAll.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).
Renvoie
Le chemin de périphérique, ou un texte vide si index est hors limites ou si les écrans ont changé depuis l'instantané.
DisplayMonitorGetEnumeratedDpiAt
DisplayMonitorGetEnumeratedDpiAt(index: Integer) → Integer
Renvoie la valeur DPI d'un écran du dernier instantané DisplayMonitorEnumeratedAll, telle qu'elle était au moment de l'instantané.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).
Renvoie
La valeur DPI, par exemple 96 pour une mise à l'échelle de 100 pour cent ou 144 pour 150 pour cent, ou 0 si index est hors limites.
1 exemple: Lister les écrans
DisplayMonitorGetEnumeratedFriendlyNameAt
DisplayMonitorGetEnumeratedFriendlyNameAt(index: Integer) → Text
Renvoie le nom de modèle indiqué par un écran, par exemple DELL U2720Q, pour un écran du dernier instantané DisplayMonitorEnumeratedAll. Deux écrans identiques indiquent le même nom.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).
Renvoie
Le nom de modèle, ou un texte vide si index est hors limites, si l'écran n'indique aucun nom (fréquent pour les écrans intégrés des ordinateurs portables) ou si les écrans ont changé depuis l'instantané.
1 exemple: Lister les écrans
DisplayMonitorGetEnumeratedHeightAt
DisplayMonitorGetEnumeratedHeightAt(index: Integer, workArea: Bool) → Integer
Renvoie la hauteur d'un écran du dernier instantané DisplayMonitorEnumeratedAll, soit de sa zone totale, soit de sa zone de travail, telle qu'elle était au moment de l'instantané.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La hauteur en pixels, ou 0 si index est hors limites.
1 exemple: Lister les écrans
DisplayMonitorGetEnumeratedWidthAt
DisplayMonitorGetEnumeratedWidthAt(index: Integer, workArea: Bool) → Integer
Renvoie la largeur d'un écran du dernier instantané DisplayMonitorEnumeratedAll, soit de sa zone totale, soit de sa zone de travail, telle qu'elle était au moment de l'instantané.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La largeur en pixels, ou 0 si index est hors limites.
1 exemple: Lister les écrans
DisplayMonitorGetEnumeratedXAt
DisplayMonitorGetEnumeratedXAt(index: Integer, workArea: Bool) → Integer
Renvoie le bord gauche d'un écran du dernier instantané DisplayMonitorEnumeratedAll, soit de sa zone totale, soit de sa zone de travail, tel qu'il était au moment de l'instantané.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord gauche en pixels d'écran (négatif pour un écran situé à gauche de l'écran principal), ou 0 si index est hors limites. 0 est aussi un bord réel : vérifiez donc index par rapport au nombre d'écrans.
DisplayMonitorGetEnumeratedYAt
DisplayMonitorGetEnumeratedYAt(index: Integer, workArea: Bool) → Integer
Renvoie le bord supérieur d'un écran du dernier instantané DisplayMonitorEnumeratedAll, soit de sa zone totale, soit de sa zone de travail, tel qu'il était au moment de l'instantané.
Paramètres
index: Integer— Position de l'écran, à partir de zéro, dans le dernier instantané DisplayMonitorEnumeratedAll (de gauche à droite, puis de haut en bas).workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord supérieur en pixels d'écran (négatif pour un écran situé au-dessus de l'écran principal), ou 0 si index est hors limites. 0 est aussi un bord réel : vérifiez donc index par rapport au nombre d'écrans.
DisplayMonitorGetFriendlyNameFromPoint
DisplayMonitorGetFriendlyNameFromPoint(x: Integer, y: Integer) → Text
Renvoie le nom de modèle, par exemple DELL U2720Q, de l'écran contenant un point de l'écran. Lisible mais non unique : deux écrans identiques indiquent le même nom.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.
Renvoie
Le nom de modèle, ou un texte vide si l'écran n'en indique aucun (fréquent pour les écrans intégrés des ordinateurs portables). Un point situé hors de tous les écrans utilise l'écran le plus proche.
DisplayMonitorGetRectHeightFromName
DisplayMonitorGetRectHeightFromName(name: Text, workArea: Bool) → Integer
Renvoie la hauteur d'un écran connecté trouvé par son chemin de périphérique enregistré ou son nom de modèle, soit de sa zone totale, soit de sa zone de travail.
Paramètres
name: Text— Un chemin de périphérique d'écran (le choix fiable) ou un nom de modèle tel que DELL U2720Q. Ne respecte pas la casse ; une correspondance exacte de chemin de périphérique l'emporte sur un nom de modèle.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La hauteur en pixels, ou 0 si aucun écran connecté ne correspond au nom.
DisplayMonitorGetRectHeightFromPoint
DisplayMonitorGetRectHeightFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer
Renvoie la hauteur de l'écran contenant un point de l'écran, soit de sa zone totale, soit de sa zone de travail. Un point situé hors de tous les écrans utilise l'écran le plus proche.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La hauteur en pixels.
2 exemples: Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
DisplayMonitorGetRectWidthFromName
DisplayMonitorGetRectWidthFromName(name: Text, workArea: Bool) → Integer
Renvoie la largeur d'un écran connecté trouvé par son chemin de périphérique enregistré ou son nom de modèle, soit de sa zone totale, soit de sa zone de travail.
Paramètres
name: Text— Un chemin de périphérique d'écran (le choix fiable) ou un nom de modèle tel que DELL U2720Q. Ne respecte pas la casse ; une correspondance exacte de chemin de périphérique l'emporte sur un nom de modèle.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La largeur en pixels, ou 0 si aucun écran connecté ne correspond au nom.
DisplayMonitorGetRectWidthFromPoint
DisplayMonitorGetRectWidthFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer
Renvoie la largeur de l'écran contenant un point de l'écran, soit de sa zone totale, soit de sa zone de travail. Un point situé hors de tous les écrans utilise l'écran le plus proche.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
La largeur en pixels.
3 exemples: Chaîne else-if, Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
DisplayMonitorGetRectXFromName
DisplayMonitorGetRectXFromName(name: Text, workArea: Bool) → Integer
Renvoie le bord gauche d'un écran connecté trouvé par son chemin de périphérique enregistré ou son nom de modèle, soit de sa zone totale, soit de sa zone de travail.
Paramètres
name: Text— Un chemin de périphérique d'écran (le choix fiable) ou un nom de modèle tel que DELL U2720Q. Ne respecte pas la casse ; une correspondance exacte de chemin de périphérique l'emporte sur un nom de modèle.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord gauche en pixels d'écran, ou 0 si aucun écran connecté ne correspond au nom. 0 est aussi un bord réel : vérifiez donc d'abord avec DisplayMonitorExistsByName.
DisplayMonitorGetRectXFromPoint
DisplayMonitorGetRectXFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer
Renvoie le bord gauche de l'écran contenant un point de l'écran, soit de sa zone totale, soit de sa zone de travail. Un point situé hors de tous les écrans utilise l'écran le plus proche.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord gauche en pixels d'écran ; négatif pour un écran situé à gauche de l'écran principal.
3 exemples: Chaîne else-if, Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
DisplayMonitorGetRectYFromName
DisplayMonitorGetRectYFromName(name: Text, workArea: Bool) → Integer
Renvoie le bord supérieur d'un écran connecté trouvé par son chemin de périphérique enregistré ou son nom de modèle, soit de sa zone totale, soit de sa zone de travail.
Paramètres
name: Text— Un chemin de périphérique d'écran (le choix fiable) ou un nom de modèle tel que DELL U2720Q. Ne respecte pas la casse ; une correspondance exacte de chemin de périphérique l'emporte sur un nom de modèle.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord supérieur en pixels d'écran, ou 0 si aucun écran connecté ne correspond au nom. 0 est aussi un bord réel : vérifiez donc d'abord avec DisplayMonitorExistsByName.
DisplayMonitorGetRectYFromPoint
DisplayMonitorGetRectYFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer
Renvoie le bord supérieur de l'écran contenant un point de l'écran, soit de sa zone totale, soit de sa zone de travail. Un point situé hors de tous les écrans utilise l'écran le plus proche.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.workArea: Bool— true pour la zone de travail, qui exclut la barre des tâches et les barres d'outils ancrées ; false pour l'écran entier.
Renvoie
Le bord supérieur en pixels d'écran ; négatif pour un écran situé au-dessus de l'écran principal.
2 exemples: Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
Engine
EngineConsumePhysicalInput
EngineConsumePhysicalInput(enable: Bool, timeoutSeconds: Integer) → Bool
Empêche les entrées réelles de la souris et du clavier de l'utilisateur d'atteindre une fenêtre, ou met fin à ce blocage. Les entrées envoyées par les scripts fonctionnent toujours, et le blocage prend fin de lui-même après le délai.
Paramètres
enable: Bool— true pour démarrer ou redémarrer le blocage des entrées réelles ; false pour mettre fin au blocage, quel que soit le script qui l'a démarré.timeoutSeconds: Integer— Durée maximale du blocage, en secondes ; 1 ou plus lorsque enable vaut true. Les valeurs plus longues sont ramenées au maximum défini dans la page de paramètres Scripts (120 secondes par défaut). Ignoré lorsque enable vaut false.
Renvoie
Toujours true. Lorsque enable vaut true, un timeoutSeconds inférieur ou égal à 0 arrête le script avec une erreur.
EngineDisable
EngineDisable() → Bool · Simple
Désactive le moteur, comme depuis l'icône de la zone de notification, jusqu'à ce qu'EngineEnable ou la zone de notification le réactive. Le changement a lieu juste après le retour de l'appel. Ne fait rien en mode sans échec.
Paramètres
Aucun paramètre.
Renvoie
true si la demande a été envoyée ; false si le moteur n'a pas fini de démarrer.
1 exemple: État du moteur
EngineDisableNextGesture
EngineDisableNextGesture() → Bool · Simple
Laisse le prochain appui sur un bouton de tracé passer directement à l'application au lieu de démarrer un geste, une seule fois. Sans effet tant que le moteur est désactivé.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
1 exemple: Laisser passer le prochain glissement du bouton droit
EngineEnable
EngineEnable() → Bool · Simple
Réactive le moteur après EngineDisable ou une désactivation depuis l'icône de la zone de notification. Le changement a lieu juste après le retour de l'appel. Ne fait rien en mode sans échec.
Paramètres
Aucun paramètre.
Renvoie
true si la demande a été envoyée ; false si le moteur n'a pas fini de démarrer.
EngineExit
EngineExit() → Bool · Simple
Ferme le moteur par un arrêt normal, comme Quitter dans le menu de la zone de notification : les fenêtres masquées dans la zone de notification sont restaurées et l'interface de configuration se ferme. L'arrêt commence juste après le retour de l'appel.
Paramètres
Aucun paramètre.
Renvoie
true si la demande d'arrêt a été envoyée ; false si le moteur n'a pas fini de démarrer.
EngineIsDisabled
EngineIsDisabled() → Bool
Indique si le moteur est actuellement désactivé, soit par EngineDisable ou l'icône de la zone de notification, soit automatiquement pour l'application ayant le focus.
Paramètres
Aucun paramètre.
Renvoie
true si le moteur est désactivé ; false s'il est actif.
1 exemple: État du moteur
EngineIsSafeMode
EngineIsSafeMode() → Bool
Indique si le moteur a été démarré en mode sans échec. En mode sans échec, seuls les scripts lancés depuis la console de diagnostic peuvent s'exécuter.
Paramètres
Aucun paramètre.
Renvoie
true en mode sans échec ; sinon false.
1 exemple: État du moteur
EngineReload
EngineReload() → Bool · Simple
Recharge la configuration depuis le disque sans redémarrage, comme Recharger la configuration dans le menu de la zone de notification. Attend jusqu'à 3 secondes. Tous les autres scripts en cours d'exécution sont arrêtés ; celui-ci continue.
Paramètres
Aucun paramètre.
Renvoie
true dès que la nouvelle configuration est en vigueur ; false si elle n'a pas pu être chargée ou si le rechargement a pris plus de 3 secondes.
EngineStopAllActions
EngineStopAllActions() → Bool · Simple
Demande à toutes les actions et à tous les scripts en cours d'exécution de s'arrêter, y compris celui qui l'appelle. Rien n'est interrompu de force : chaque script s'arrête à son étape suivante, l'appelant peut donc encore aller un peu plus loin.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
File
FileAppendText
FileAppendText(path: Text, text: Text) → Bool
Ajoute du texte à la fin d'un fichier texte, en créant le fichier s'il n'existe pas. Pratique pour les journaux. Le texte est écrit en UTF-8 et aucun saut de ligne n'est ajouté pour vous.
Paramètres
path: Text— Chemin complet du fichier. Son dossier doit déjà exister.text: Text— Le texte à ajouter. Terminez-le par '\n' pour conserver une entrée par ligne.
Renvoie
true si le texte a été écrit ; false si le dossier n'existe pas, si le fichier est verrouillé ou si le début du fichier existant semble contenir des données binaires.
1 exemple: Ajouter à un fichier journal
FileCopy
FileCopy(source: Text, destination: Text, overwrite: Bool) → Bool
Copie un fichier de n'importe quel type vers un nouveau chemin. Le dossier de destination doit déjà exister.
Paramètres
source: Text— Chemin complet du fichier à copier.destination: Text— Chemin complet de la nouvelle copie, nom de fichier compris.overwrite: Bool— true pour remplacer un fichier existant à destination ; false pour le laisser intact et renvoyer false.
Renvoie
true si le fichier a été copié ; false si la source est manquante, si la destination existe et qu'overwrite vaut false, ou si la copie a échoué.
1 exemple: Sauvegarder un fichier avant de le modifier
FileCreate
FileCreate(path: Text, text: Text) → Bool
Crée un fichier texte avec le contenu indiqué, écrit en UTF-8. Refuse si un élément existe déjà à ce chemin ; utilisez FileEditText pour remplacer le contenu d'un fichier existant.
Paramètres
path: Text— Chemin complet du nouveau fichier. Son dossier doit déjà exister.text: Text— Le contenu du fichier. Un texte vide crée un fichier vide.
Renvoie
true si le fichier a été créé ; false si un fichier ou un dossier existe déjà à cet emplacement, ou si le fichier n'a pas pu être écrit.
2 exemples: La date du jour, et un nom de fichier horodaté, Ajouter à un fichier journal
FileDelete
FileDelete(path: Text) → Bool
Supprime définitivement un fichier ; il ne passe pas par la Corbeille. Un fichier déjà absent compte comme une réussite. Un dossier n'est jamais supprimé ; utilisez FolderDelete pour cela.
Paramètres
path: Text— Chemin complet du fichier à supprimer.
Renvoie
true si le fichier n'existe plus, y compris s'il n'a jamais existé ; false si le chemin est un dossier, si le fichier est verrouillé ou si l'accès est refusé.
FileEditText
FileEditText(path: Text, text: Text) → Bool
Remplace tout le contenu d'un fichier texte existant, écrit en UTF-8. Refuse un fichier qui semble contenir des données binaires. Utilisez FileCreate pour un nouveau fichier.
Paramètres
path: Text— Chemin complet d'un fichier texte existant.text: Text— Le nouveau contenu, qui remplace tout ce que contient le fichier.
Renvoie
true si le fichier a été réécrit ; false s'il n'existe pas, si son début semble contenir des données binaires ou s'il n'a pas pu être écrit.
1 exemple: Sauvegarder un fichier avant de le modifier
FileExists
FileExists(path: Text) → Bool
Vérifie si un fichier existe à un chemin. Un dossier à ce chemin ne compte pas ; utilisez FolderExists pour les dossiers.
Paramètres
path: Text— Chemin complet du fichier à vérifier.
Renvoie
true si un fichier existe à cet emplacement ; false si rien n'y existe ou s'il s'agit d'un dossier.
2 exemples: Ajouter à un fichier journal, Sauvegarder un fichier avant de le modifier
FileGetCreationDate
FileGetCreationDate(path: Text) → Text
Renvoie la date de création d'un fichier, sous forme de date et d'heure ISO 8601 en UTC que DateTimeFormat et les autres fonctions intégrées DateTime savent lire.
Paramètres
path: Text— Chemin complet du fichier.
Renvoie
L'heure de création, par exemple 2026-10-01T18:05:09Z, ou un texte vide si le fichier n'existe pas ou si le chemin est un dossier.
FileGetModifiedDate
FileGetModifiedDate(path: Text) → Text
Renvoie la date de la dernière modification du contenu d'un fichier, sous forme de date et d'heure ISO 8601 en UTC que DateTimeFormat et les autres fonctions intégrées DateTime savent lire.
Paramètres
path: Text— Chemin complet du fichier.
Renvoie
L'heure de dernière modification, par exemple 2026-10-01T18:05:09Z, ou un texte vide si le fichier n'existe pas ou si le chemin est un dossier.
1 exemple: Lire un fichier et compter ses lignes
FileGetProductVersion
FileGetProductVersion(path: Text) → Text
Renvoie la version de produit stockée dans un fichier de programme ou de bibliothèque, par exemple un .exe ou un .dll. Il s'agit de la version du produit avec lequel le fichier est fourni, qui peut différer de FileGetVersion.
Paramètres
path: Text— Chemin complet du .exe, du .dll ou d'un autre fichier contenant des informations de version.
Renvoie
La version sous forme de quatre nombres, par exemple 10.0.22621.1, ou un texte vide si le fichier ne contient aucune information de version ou n'existe pas.
FileGetSize
FileGetSize(path: Text) → Integer
Renvoie la taille d'un fichier en octets, sans ouvrir ni lire le fichier.
Paramètres
path: Text— Chemin complet du fichier.
Renvoie
La taille en octets, ou -1 si le fichier n'existe pas ou si le chemin est un dossier.
1 exemple: Lire un fichier et compter ses lignes
FileGetVersion
FileGetVersion(path: Text) → Text
Renvoie la version de fichier stockée dans un fichier de programme ou de bibliothèque, par exemple un .exe ou un .dll, telle qu'elle apparaît dans l'onglet Détails de ses Propriétés.
Paramètres
path: Text— Chemin complet du .exe, du .dll ou d'un autre fichier contenant des informations de version.
Renvoie
La version sous forme de quatre nombres, par exemple 10.0.22621.1, ou un texte vide si le fichier ne contient aucune information de version ou n'existe pas.
FileMove
FileMove(source: Text, destination: Text, overwrite: Bool) → Bool
Déplace un fichier de n'importe quel type vers un nouveau chemin, ce qui permet aussi de le renommer, y compris en changeant seulement la casse des lettres. Le dossier de destination doit déjà exister.
Paramètres
source: Text— Chemin complet du fichier à déplacer.destination: Text— Chemin complet du nouvel emplacement du fichier, nom de fichier compris.overwrite: Bool— true pour remplacer en une seule étape un fichier existant à destination ; false pour le laisser intact et renvoyer false. Une destination qui ne diffère de la source que par la casse des lettres n'est pas un fichier existant.
Renvoie
true si le fichier a été déplacé ; false si la source est manquante, si la destination existe et qu'overwrite vaut false, ou si le déplacement a échoué.
FileReadText
FileReadText(path: Text) → Text
Lit un fichier texte entier et renvoie son contenu. Prend en charge l'UTF-8, l'UTF-16 avec marque d'ordre des octets, et les fichiers dans l'ancienne page de codes du système. Refuse les fichiers binaires.
Paramètres
path: Text— Chemin complet du fichier texte.
Renvoie
Le contenu du fichier, ou un texte vide si le fichier n'existe pas, ne peut pas être lu ou semble contenir des données binaires.
2 exemples: Lire un fichier et compter ses lignes, Sauvegarder un fichier avant de le modifier
FileRename
FileRename(path: Text, newName: Text) → Bool
Renomme un fichier en le laissant dans son dossier actuel. Un simple changement de casse, par exemple de report.txt en Report.txt, fonctionne aussi. Pour déplacer un fichier vers un autre dossier, utilisez FileMove.
Paramètres
path: Text— Chemin complet du fichier à renommer.newName: Text— Le nouveau nom de fichier seul, par exemple report-old.txt. Un nom contenant une barre oblique ou une barre oblique inverse arrête le script avec une erreur.
Renvoie
true si le fichier a été renommé ; false s'il n'existe pas, si un autre fichier ou dossier portant le nouveau nom existe déjà ou si le renommage a échoué.
Folder
FolderCreate
FolderCreate(path: Text) → Bool
Crée un dossier, y compris les dossiers parents manquants. Un dossier qui existe déjà compte comme une réussite.
Paramètres
path: Text— Chemin complet du dossier à créer.
Renvoie
true si le dossier existe ensuite ; false si un fichier fait obstacle ou si le dossier n'a pas pu être créé.
FolderDelete
FolderDelete(path: Text, recursive: Bool) → Bool
Supprime définitivement un dossier ; il ne passe pas par la Corbeille. Lorsque recursive vaut true, tout son contenu est également supprimé. Un dossier déjà absent compte comme une réussite. Un fichier n'est jamais supprimé ; utilisez FileDelete pour cela.
Paramètres
path: Text— Chemin complet du dossier à supprimer.recursive: Bool— true pour supprimer le dossier et tout son contenu ; false pour le supprimer uniquement s'il est vide.
Renvoie
true si le dossier n'existe plus ; false si le chemin est un fichier, si le dossier n'est pas vide et que recursive vaut false, ou si un élément qu'il contient est verrouillé ou protégé.
FolderEnumerateAll
FolderEnumerateAll(path: Text, recursive: Bool) → Integer
Liste les fichiers et sous-dossiers d'un dossier et renvoie leur nombre. Lisez chaque chemin complet avec FolderGetEnumeratedPathAt. Les sous-dossiers inaccessibles sont ignorés.
Paramètres
path: Text— Chemin complet du dossier à lister.recursive: Bool— true pour lister aussi tout le contenu de tous les sous-dossiers ; false pour le contenu direct du dossier uniquement.
Renvoie
Le nombre d'entrées trouvées, ou -1 si le dossier n'existe pas ou ne peut pas être lu.
1 exemple: Compter les types de fichiers d'un dossier
FolderExists
FolderExists(path: Text) → Bool
Vérifie si un dossier existe à un chemin. Un fichier à ce chemin ne compte pas ; utilisez FileExists pour les fichiers.
Paramètres
path: Text— Chemin complet du dossier à vérifier.
Renvoie
true si un dossier existe à cet emplacement ; false si rien n'y existe ou s'il s'agit d'un fichier.
FolderGetEnumeratedPathAt
FolderGetEnumeratedPathAt(index: Integer) → Text
Renvoie un chemin complet de la liste établie par le dernier appel à FolderEnumerateAll dans cette exécution du script.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre renvoyé par FolderEnumerateAll moins 1.
Renvoie
Le chemin complet d'un fichier ou d'un dossier, ou un texte vide si index est hors limites ou si FolderEnumerateAll n'a pas été appelée.
1 exemple: Compter les types de fichiers d'un dossier
FolderRename
FolderRename(path: Text, newName: Text) → Bool
Renomme un dossier en le laissant, avec son contenu, dans son dossier parent actuel. Un simple changement de casse fonctionne aussi.
Paramètres
path: Text— Chemin complet du dossier à renommer.newName: Text— Le nouveau nom de dossier seul. Un nom contenant une barre oblique ou une barre oblique inverse arrête le script avec une erreur.
Renvoie
true si le dossier a été renommé ; false s'il n'existe pas, si un autre fichier ou dossier portant le nouveau nom existe déjà ou si le renommage a échoué, par exemple parce qu'un fichier qu'il contient est ouvert.
FolderWatchCreate
FolderWatchCreate(name: Text, path: Text, recursive: Bool, filterMask: Integer, script: Text) → Bool
Commence à surveiller un dossier et exécute un script pour chaque modification signalée par Windows, par exemple un fichier créé, modifié, renommé ou supprimé. La surveillance continue après la fin de ce script.
Paramètres
name: Text— Un nom pour la surveillance. Créer une surveillance avec un nom déjà utilisé remplace cette surveillance. Les noms respectent la casse.path: Text— Chemin complet du dossier à surveiller.recursive: Bool— true pour surveiller aussi tous les sous-dossiers ; false pour surveiller uniquement le dossier lui-même.filterMask: Integer— Les types de modifications à signaler : des constantes FileNotify combinées avec |, par exemple FileNotify.FileName | FileNotify.LastWrite.script: Text— Le script à exécuter pour chaque modification, sous forme de Text. Il lit la modification avec ContextGetWatchAction (created, deleted, modified, renamed-old-name, renamed-new-name ou overflow) et ContextGetWatchPath.
Renvoie
true si la surveillance est active ; false si le dossier n'existe pas, ne peut pas être ouvert ou si filterMask vaut 0.
1 exemple: Surveiller un dossier
FolderWatchDelete
FolderWatchDelete(name: Text) → Bool
Arrête une surveillance de dossier créée avec FolderWatchCreate, afin que son script ne s'exécute plus.
Paramètres
name: Text— Le nom transmis à FolderWatchCreate. Les noms respectent la casse.
Renvoie
true si une surveillance portant ce nom a été trouvée et arrêtée ; false s'il n'y en avait aucune.
1 exemple: Surveiller un dossier
FolderWatchDeleteAll
FolderWatchDeleteAll() → Bool
Arrête toutes les surveillances de dossier créées avec FolderWatchCreate, afin qu'aucun de leurs scripts ne s'exécute plus.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
FolderWatchGetCount
FolderWatchGetCount() → Integer
Renvoie le nombre de surveillances de dossier actives et prend un instantané de leurs noms pour FolderWatchGetEnumeratedNameAt.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de surveillances de dossier actives, ou 0 s'il n'y en a aucune.
FolderWatchGetEnumeratedNameAt
FolderWatchGetEnumeratedNameAt(index: Integer) → Text
Renvoie un nom de surveillance de l'instantané pris par le dernier appel à FolderWatchGetCount dans cette exécution du script.
Paramètres
index: Integer— Position dans l'instantané, de 0 au nombre moins 1. L'ordre n'a aucune signification.
Renvoie
Le nom de la surveillance, ou un texte vide si index est hors limites ou si FolderWatchGetCount n'a pas été appelée.
GestureProfile
GestureProfileEnumerateAll
GestureProfileEnumerateAll() → Integer
Établit la liste de tous les profils de gestes de la configuration et renvoie leur nombre. Lisez chacun d'eux avec GestureProfileGetEnumeratedIdAt et GestureProfileGetEnumeratedNameAt.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de profils de gestes, ou 0 s'il n'y en a aucun.
1 exemple: Passer au profil de gestes suivant
GestureProfileGetActiveId
GestureProfileGetActiveId() → Text
Renvoie l'identifiant du profil de gestes actuellement actif.
Paramètres
Aucun paramètre.
Renvoie
L'identifiant du profil actif, ou un texte vide si aucun profil n'est actif.
2 exemples: Une notification Windows, Passer au profil de gestes suivant
GestureProfileGetEnumeratedIdAt
GestureProfileGetEnumeratedIdAt(index: Integer) → Text
Renvoie l'identifiant d'un profil de la liste établie en dernier par GestureProfileEnumerateAll dans ce script. Transmettez l'identifiant à GestureProfileSwitch.
Paramètres
index: Integer— Position dans la liste, à partir de zéro, de 0 au nombre moins 1.
Renvoie
L'identifiant du profil, ou un texte vide si index est hors limites ou si GestureProfileEnumerateAll n'a pas été appelée.
1 exemple: Passer au profil de gestes suivant
GestureProfileGetEnumeratedNameAt
GestureProfileGetEnumeratedNameAt(index: Integer) → Text
Renvoie le nom d'affichage d'un profil de la liste établie en dernier par GestureProfileEnumerateAll dans ce script.
Paramètres
index: Integer— Position dans la liste, à partir de zéro, de 0 au nombre moins 1.
Renvoie
Le nom du profil, ou un texte vide si index est hors limites ou si GestureProfileEnumerateAll n'a pas été appelée.
1 exemple: Passer au profil de gestes suivant
GestureProfileSwitch
GestureProfileSwitch(profileId: Text) → Bool · Simple
Bascule vers un autre profil de gestes, comme en le choisissant dans le menu de la zone de notification, et mémorise ce choix après un redémarrage. Le basculement a lieu juste après le retour de l'appel.
Paramètres
profileId: Text— L'identifiant du profil vers lequel basculer, par exemple un identifiant issu de GestureProfileGetEnumeratedIdAt, ou un texte vide pour aucun profil.
Renvoie
true si la demande a été envoyée ; false pour un identifiant qu'aucun profil ne porte, et rien ne change. Le basculement a lieu juste après le retour de l'appel ; utilisez GestureProfileGetActiveId pour le confirmer.
1 exemple: Passer au profil de gestes suivant
Keyboard
KeyboardGetKeyState
KeyboardGetKeyState(key: Integer) → Integer
Renvoie l'état Windows brut d'une touche à cet instant. Tant qu'un autre bureau, comme une invite UAC ou l'écran de verrouillage, est au premier plan, toutes les touches sont lues comme relâchées. Pour un simple oui ou non, utilisez KeyboardIsKeyDown ou KeyboardIsKeyToggled.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.CapsLock, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
Un Integer brut : négatif (bit de poids fort à 1) lorsque la touche est enfoncée, et impair (bit de poids faible à 1) lorsqu'une touche de verrouillage telle que Verr. Maj est activée.
1 exemple: Bits d'état des touches
KeyboardGetKeyStateAsync
KeyboardGetKeyStateAsync(key: Integer) → Integer
Renvoie l'état Windows brut d'une touche à cet instant précis, quelle que soit la fenêtre ayant le focus.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.ShiftKey, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
Un Integer brut : négatif (bit de poids fort à 1) lorsque la touche est enfoncée en ce moment. Le bit de poids faible peut être à 1 si la touche a été enfoncée depuis une vérification précédente, ce que Windows ne garantit pas.
KeyboardIsKeyDown
KeyboardIsKeyDown(key: Integer) → Bool
Vérifie si une touche est maintenue enfoncée à cet instant. Tant qu'un autre bureau, comme une invite UAC ou l'écran de verrouillage, est au premier plan, toutes les touches sont lues comme relâchées.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.ControlKey, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
true si la touche est enfoncée ; false si elle est relâchée.
2 exemples: Bits d'état des touches, Changer de comportement tant que Ctrl est maintenue
KeyboardIsKeyToggled
KeyboardIsKeyToggled(key: Integer) → Bool
Vérifie si une touche de verrouillage est activée. N'a de sens que pour VirtualKey.CapsLock, VirtualKey.NumLock et VirtualKey.Scroll.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.CapsLock, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
true si la touche de verrouillage est activée ; false si elle est désactivée.
1 exemple: Bits d'état des touches
KeyboardKeyDown
KeyboardKeyDown(key: Integer) → Bool
Enfonce une touche et la maintient jusqu'à ce que KeyboardKeyUp la relâche. Lorsque le paramètre Envoyer les touches multimédias et de navigation comme commandes est activé, une touche multimédia, de volume ou de navigation envoie plutôt sa commande.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.ShiftKey, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
true si l'appui sur la touche a été envoyé ; false si Windows l'a bloqué ou, pour une touche envoyée comme commande, si aucune fenêtre n'a le focus.
1 exemple: Maj+clic
KeyboardKeyUp
KeyboardKeyUp(key: Integer) → Bool
Relâche une touche enfoncée avec KeyboardKeyDown. Pour une touche multimédia, de volume ou de navigation envoyée comme commande, ne fait rien, puisque la commande est déjà partie lors de l'appui.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.ShiftKey, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
true si le relâchement de la touche a été envoyé, et toujours true pour une touche envoyée comme commande ; false si Windows l'a bloqué.
1 exemple: Maj+clic
KeyboardPressKey
KeyboardPressKey(key: Integer) → Bool · Simple
Enfonce et relâche une touche, qui peut être n'importe quelle touche pour laquelle Windows a un code, touches multimédias comprises. Lorsque le paramètre Envoyer les touches multimédias et de navigation comme commandes est activé, ces touches envoient plutôt leur commande.
Paramètres
key: Integer— Une constante VirtualKey, telle que VirtualKey.MediaPlayPause, ou un code de touche virtuelle de 0 à 255. Toute autre valeur arrête le script avec une erreur.
Renvoie
true si l'appui sur la touche a été envoyé ; false si Windows l'a bloqué ou, pour une touche envoyée comme commande, si aucune fenêtre n'a le focus.
3 exemples: Constantes nommées ou nombres bruts, Touches multimédias, Associer les boutons d'un périphérique série à des touches multimédias
KeyboardPressKeyCombo
KeyboardPressKeyCombo(combo: Text) → Bool · Simple
Envoie une combinaison de touches telle que Ctrl+C : maintient les modificateurs, enfonce puis relâche la touche, puis relâche les modificateurs. Envoie une combinaison par appel.
Paramètres
combo: Text— Des symboles de modificateur facultatifs (^ pour Ctrl, + pour Maj, @ pour Windows, le signe pour cent pour Alt) suivis d'une lettre ou d'un chiffre, ou d'un nom de touche entre accolades tel que {ENTER}, {F5} ou {LEFT}, quelle que soit la casse. Exemple : '^c' correspond à Ctrl+C.
Renvoie
true si les frappes ont été envoyées ; false si Windows les a bloquées. Une combinaison non comprise arrête le script avec une erreur.
4 exemples: Combinaisons de touches, Taper une signature, Mettre en majuscules le texte sélectionné, Rechercher la sélection sur le web
KeyboardTypeText
KeyboardTypeText(text: Text) → Bool · Simple
Saisit du texte dans la fenêtre ayant le focus caractère par caractère, dans n'importe quelle langue et y compris les emojis, quelle que soit la disposition du clavier. Attend le Délai de frappe défini dans les paramètres avant chaque caractère.
Paramètres
text: Text— Le texte à saisir. Chaque saut de ligne est envoyé comme un appui sur Entrée. Dans le script d'une expansion de texte, la touche qui a terminé le déclencheur est saisie après lui.
Renvoie
true si tous les caractères ont été envoyés, ou si le texte est vide ; false si Windows en a bloqué certains.
3 exemples: Lancer un programme, attendre sa fenêtre, agir dessus, La date du jour, et un nom de fichier horodaté, Taper une signature
Macro
MacroClearTemporary
MacroClearTemporary() → Bool
Supprime la macro enregistrée avec MacroRecordTemporary.
Paramètres
Aucun paramètre.
Renvoie
true s'il y avait une macro enregistrée à supprimer ; false s'il n'y en avait aucune.
MacroExpectFocusedWindow
MacroExpectFocusedWindow(exeName: Text, windowClass: Text) → Bool
Attend que la fenêtre au premier plan appartienne au programme et à la classe de fenêtre indiqués, pendant au plus la durée d'attente de relecture de macro définie dans les paramètres (2 secondes par défaut). Si elle ne correspond jamais, affiche une notification et arrête le script.
Paramètres
exeName: Text— Le nom de fichier du programme, par exemple notepad.exe. Ne respecte pas la casse ; un texte vide correspond à n'importe quel programme.windowClass: Text— Le nom de classe de la fenêtre de niveau supérieur, par exemple Notepad. Ne respecte pas la casse ; un texte vide correspond à n'importe quelle classe.
Renvoie
true lorsque la fenêtre correspond ; false si le script a reçu une demande d'arrêt pendant l'attente.
MacroExpectWindowAt
MacroExpectWindowAt(x: Integer, y: Integer, exeName: Text, windowClass: Text) → Bool
Attend que la fenêtre de niveau supérieur située à un point de l'écran appartienne au programme et à la classe de fenêtre indiqués, pendant au plus la durée d'attente de relecture de macro définie dans les paramètres (2 secondes par défaut). Si elle ne correspond jamais, affiche une notification et arrête le script.
Paramètres
x: Integer— Position horizontale à vérifier à l'écran, en pixels de l'écran virtuel.y: Integer— Position verticale à vérifier à l'écran, en pixels de l'écran virtuel.exeName: Text— Le nom de fichier du programme, par exemple notepad.exe. Ne respecte pas la casse ; un texte vide correspond à n'importe quel programme.windowClass: Text— Le nom de classe de la fenêtre de niveau supérieur, par exemple Notepad. Ne respecte pas la casse ; un texte vide correspond à n'importe quelle classe.
Renvoie
true lorsque la fenêtre correspond ; false si le script a reçu une demande d'arrêt pendant l'attente.
MacroGetTemporaryScript
MacroGetTemporaryScript() → Text
Renvoie la macro enregistrée avec MacroRecordTemporary sous forme de texte de script Étapes, afin qu'un script puisse l'enregistrer ou l'examiner.
Paramètres
Aucun paramètre.
Renvoie
Le texte Étapes du dernier enregistrement terminé, ou un texte vide si rien n'a été enregistré ou si l'enregistrement a été effacé. Pendant un nouvel enregistrement, renvoie toujours le précédent.
MacroPlayTemporary
MacroPlayTemporary(timeoutSeconds: Integer) → Bool
Rejoue la macro enregistrée avec MacroRecordTemporary et attend qu'elle se termine ou que le délai expire. Les entrées réelles de la souris et du clavier de l'utilisateur sont retenues pendant la relecture.
Paramètres
timeoutSeconds: Integer— Durée d'attente maximale, en secondes ; 1 ou plus, sinon le script s'arrête avec une erreur. Une macro encore en cours après ce délai continue, mais les entrées réelles ne sont plus retenues.
Renvoie
true si la macro a été rejouée jusqu'au bout à temps ; false si rien n'a été enregistré, si une étape ou une vérification de fenêtre a échoué, si la relecture a été arrêtée ou si elle était toujours en cours à l'expiration du délai.
MacroRecordTemporary
MacroRecordTemporary() → Bool
Commence à enregistrer les entrées de la souris et du clavier dans une macro temporaire conservée en mémoire ; appuyez sur Ctrl+Break pour arrêter. Retourne immédiatement, avant le début de l'enregistrement. Une boîte de confirmation peut d'abord s'afficher.
Paramètres
Aucun paramètre.
Renvoie
true si la demande d'enregistrement a été envoyée ; false si un enregistrement est déjà en cours, en démarrage ou demandé, ou si le moteur n'a pas fini de démarrer.
Math
MathAbs
MathAbs(value: Any) → Any
Renvoie la valeur absolue d'un nombre, c'est-à-dire le nombre sans son signe moins. Fonctionne avec les valeurs Integer et Real.
Paramètres
value: Any— Le nombre Integer ou Real.
Renvoie
La valeur absolue, du même type que value (Integer ou Real) ; 0.0 pour un Real qui vaut NaN ou l'infini. Une valeur qui n'est pas un nombre arrête l'action avec une erreur.
2 exemples: Limiter une valeur à une plage, Dans quelle direction est allé le tracé ?
MathAtan2
MathAtan2(y: Any, x: Any) → Real
Renvoie l'angle, en radians, de l'origine au point (x, y). Sur l'écran, y augmente vers le bas : pour obtenir l'angle d'un tracé dans le sens mathématique habituel, transmettez la variation verticale changée de signe.
Paramètres
y: Any— La coordonnée verticale du point. Integer ou Real. Notez que y vient en premier.x: Any— La coordonnée horizontale du point. Integer ou Real.
Renvoie
L'angle en radians, de -pi à pi, sous forme de Real ; 0.0 si l'un des arguments vaut NaN ou l'infini. Des arguments qui ne sont pas des nombres arrêtent l'action avec une erreur.
MathCeil
MathCeil(value: Real) → Integer
Arrondit un nombre à l'entier supérieur le plus proche. MathCeil(2.1) vaut 3 ; MathCeil(-2.1) vaut -2.
Paramètres
value: Real— Le nombre à arrondir à l'entier supérieur. Un Integer est accepté tel quel.
Renvoie
La valeur arrondie sous forme d'Integer. 0 si value vaut NaN ou l'infini ; une valeur hors de la plage des Integer donne le plus grand ou le plus petit Integer.
1 exemple: Arrondis et fonctions mathématiques sur les Real
MathClamp
MathClamp(value: Any, min: Any, max: Any) → Any
Maintient un nombre dans une plage : renvoie min si value est inférieur, max si value est supérieur, et value sinon. Fonctionne avec les valeurs Integer et Real.
Paramètres
value: Any— Le nombre à maintenir dans la plage.min: Any— La valeur minimale autorisée. Ne doit pas être supérieure à max.max: Any— La valeur maximale autorisée.
Renvoie
Celle des valeurs value, min ou max qui a été choisie, avec son propre type (Integer ou Real) ; 0.0 si l'un des arguments vaut NaN ou l'infini. Des valeurs non numériques, ou un min supérieur à max, arrêtent l'action avec une erreur.
1 exemple: Limiter une valeur à une plage
MathCos
MathCos(radians: Real) → Real
Renvoie le cosinus d'un angle exprimé en radians. Pour convertir des degrés, multipliez par MathGetPi() et divisez par 180.
Paramètres
radians: Real— L'angle en radians. Un Integer est accepté tel quel.
Renvoie
Le cosinus, de -1 à 1, sous forme de Real ; 0.0 si radians vaut NaN ou l'infini.
1 exemple: Déplacer la souris en cercle
MathFloor
MathFloor(value: Real) → Integer
Arrondit un nombre à l'entier inférieur le plus proche. MathFloor(2.9) vaut 2 ; MathFloor(-2.1) vaut -3.
Paramètres
value: Real— Le nombre à arrondir à l'entier inférieur. Un Integer est accepté tel quel.
Renvoie
La valeur arrondie sous forme d'Integer. 0 si value vaut NaN ou l'infini ; une valeur hors de la plage des Integer donne le plus grand ou le plus petit Integer.
1 exemple: Arrondis et fonctions mathématiques sur les Real
MathGetE
MathGetE() → Real
Renvoie la constante mathématique e (environ 2,71828), la base des logarithmes naturels.
Paramètres
Aucun paramètre.
Renvoie
La valeur de e sous forme de Real.
MathGetPi
MathGetPi() → Real
Renvoie la constante mathématique pi (environ 3,14159). Utilisez-la pour convertir entre degrés et radians.
Paramètres
Aucun paramètre.
Renvoie
La valeur de pi sous forme de Real.
1 exemple: Déplacer la souris en cercle
MathLog
MathLog(value: Real) → Real
Renvoie le logarithme naturel (base e) d'un nombre. Divisez par MathLog(10.0) pour obtenir un logarithme en base 10.
Paramètres
value: Real— Le nombre, supérieur à 0. Un Integer est accepté tel quel.
Renvoie
Le logarithme naturel sous forme de Real, ou 0 si value vaut 0, est négatif, vaut NaN ou l'infini.
MathMax
MathMax(a: Any, b: Any) → Any
Renvoie le plus grand de deux nombres. Fonctionne avec les valeurs Integer et Real.
Paramètres
a: Any— Le premier nombre.b: Any— Le deuxième nombre.
Renvoie
Celui de a ou b qui est le plus grand, avec son propre type ; a s'ils sont égaux ; 0.0 si l'un d'eux vaut NaN ou l'infini. Des arguments qui ne sont pas des nombres arrêtent l'action avec une erreur.
MathMin
MathMin(a: Any, b: Any) → Any
Renvoie le plus petit de deux nombres. Fonctionne avec les valeurs Integer et Real.
Paramètres
a: Any— Le premier nombre.b: Any— Le deuxième nombre.
Renvoie
Celui de a ou b qui est le plus petit, avec son propre type ; a s'ils sont égaux ; 0.0 si l'un d'eux vaut NaN ou l'infini. Des arguments qui ne sont pas des nombres arrêtent l'action avec une erreur.
1 exemple: Augmenter le volume avec un affichage à l'écran
MathMod
MathMod(value: Any, divisor: Any) → Any
Renvoie le reste de la division de value par divisor. Le résultat prend le signe du diviseur : MathMod(-30, 360) vaut donc 330, ce qui convient pour ramener un angle dans sa plage ou faire tourner un index en boucle.
Paramètres
value: Any— Le nombre à diviser. Integer ou Real.divisor: Any— Le nombre par lequel diviser. Integer ou Real.
Renvoie
Le reste : un Integer lorsque les deux arguments sont des Integer, sinon un Real. 0 si divisor vaut 0 ou si l'un des arguments vaut NaN ou l'infini. Des arguments qui ne sont pas des nombres arrêtent l'action avec une erreur.
MathPow
MathPow(base: Real, exponent: Real) → Real
Élève un nombre à une puissance, par exemple au carré ou au cube. MathPow(2.0, 10.0) vaut 1024.
Paramètres
base: Real— Le nombre à élever. Un Integer est accepté tel quel.exponent: Real— La puissance à laquelle l'élever. Peut être négative ou fractionnaire ; 0.5 donne la racine carrée.
Renvoie
Le résultat sous forme de Real, ou 0 si un argument vaut NaN ou l'infini ou s'il n'y a pas de résultat fini, par exemple 0 élevé à une puissance négative ou un résultat trop grand pour être représenté.
MathRandom
MathRandom(min: Integer, max: Integer) → Integer
Renvoie un nombre entier aléatoire compris entre min et max, bornes incluses. MathRandom(1, 6) lance un dé.
Paramètres
min: Integer— Le plus petit résultat possible.max: Integer— Le plus grand résultat possible. Ne doit pas être inférieur à min.
Renvoie
Un Integer aléatoire de min à max. Un min supérieur à max arrête l'action avec une erreur.
2 exemples: while (true) avec un indicateur de sortie, Nombres aléatoires et pile ou face
MathRound
MathRound(value: Real) → Integer
Arrondit un nombre à l'entier le plus proche. Les demis sont arrondis en s'éloignant de zéro : 2.5 devient 3 et -2.5 devient -3.
Paramètres
value: Real— Le nombre à arrondir. Pour conserver deux décimales sous forme d'entier, arrondissez value multiplié par 100.
Renvoie
La valeur arrondie sous forme d'Integer. 0 si value vaut NaN ou l'infini ; une valeur hors de la plage des Integer donne le plus grand ou le plus petit Integer.
5 exemples: Arrondis et fonctions mathématiques sur les Real, Longueur du tracé d'un geste, Déplacer la souris en cercle, Mettre en forme un Real sans six décimales, Augmenter le volume avec un affichage à l'écran
MathSin
MathSin(radians: Real) → Real
Renvoie le sinus d'un angle exprimé en radians. Pour convertir des degrés, multipliez par MathGetPi() et divisez par 180.
Paramètres
radians: Real— L'angle en radians. Un Integer est accepté tel quel.
Renvoie
Le sinus, de -1 à 1, sous forme de Real ; 0.0 si radians vaut NaN ou l'infini.
1 exemple: Déplacer la souris en cercle
MathSqrt
MathSqrt(value: Real) → Real
Renvoie la racine carrée d'un nombre. MathSqrt(dx * dx + dy * dy) est la distance entre deux points.
Paramètres
value: Real— Le nombre, supérieur ou égal à 0. Un Integer est accepté tel quel.
Renvoie
La racine carrée sous forme de Real, ou 0 si value est négatif, vaut NaN ou l'infini.
2 exemples: Arrondis et fonctions mathématiques sur les Real, Longueur du tracé d'un geste
MathTan
MathTan(radians: Real) → Real
Renvoie la tangente d'un angle exprimé en radians. À proximité d'un angle droit, le résultat devient très grand.
Paramètres
radians: Real— L'angle en radians. Un Integer est accepté tel quel.
Renvoie
La tangente sous forme de Real ; 0.0 si radians vaut NaN ou l'infini.
Mouse
MouseButtonDown
MouseButtonDown(button: Integer) → Bool
Enfonce un bouton de la souris à la position actuelle du curseur et le maintient jusqu'à MouseButtonUp. Combinez avec MouseMoveTo pour scripter un glisser-déplacer.
Paramètres
button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si l'appui sur le bouton a été envoyé ; false si Windows l'a bloqué. Un bouton inconnu arrête le script avec une erreur.
1 exemple: Un glissement scripté
MouseButtonUp
MouseButtonUp(button: Integer) → Bool
Relâche un bouton de la souris à la position actuelle du curseur, généralement un bouton enfoncé avec MouseButtonDown.
Paramètres
button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si le relâchement du bouton a été envoyé ; false si Windows l'a bloqué. Un bouton inconnu arrête le script avec une erreur.
1 exemple: Un glissement scripté
MouseClick
MouseClick(x: Integer, y: Integer, button: Integer) → Bool · Simple
Déplace le curseur vers un point de l'écran et y clique avec un bouton de la souris. Le curseur reste ensuite à cet endroit.
Paramètres
x: Integer— Position horizontale du clic à l'écran, en pixels.y: Integer— Position verticale du clic à l'écran, en pixels.button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si le clic a été envoyé ; false si le curseur n'a pas pu être déplacé vers le point, auquel cas rien n'est cliqué, ou si Windows a bloqué le clic. Un bouton inconnu arrête le script avec une erreur.
2 exemples: Cliquer quelque part, puis remettre le curseur en place, Maj+clic
MouseClickAtClientPoint
MouseClickAtClientPoint(window: Window, x: Integer, y: Integer, button: Integer) → Bool
Clique avec un bouton de la souris à un point mesuré depuis le coin supérieur gauche de la zone cliente d'une fenêtre (l'intérieur, sans barre de titre ni bordures). Le curseur s'y déplace et y reste.
Paramètres
window: Window— La fenêtre dont la zone cliente sert d'origine à x et y.x: Integer— Distance depuis le bord gauche de la zone cliente, en pixels propres à cette fenêtre, qui peuvent différer des pixels d'écran pour une fenêtre que Windows met à l'échelle selon le DPI.y: Integer— Distance depuis le bord supérieur de la zone cliente, en pixels propres à cette fenêtre, qui peuvent différer des pixels d'écran pour une fenêtre que Windows met à l'échelle selon le DPI.button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si le clic a été envoyé ; false si la fenêtre n'est pas valide ou n'existe plus, ou si le curseur n'a pas pu être déplacé vers le point, auquel cas rien n'est cliqué, ou si Windows a bloqué le clic. Un bouton inconnu arrête le script avec une erreur.
1 exemple: Cliquer sur un point dans une fenêtre
MouseDoubleClick
MouseDoubleClick(x: Integer, y: Integer, button: Integer) → Bool · Simple
Déplace le curseur vers un point de l'écran et y double-clique avec un bouton de la souris. Le curseur reste ensuite à cet endroit.
Paramètres
x: Integer— Position horizontale du double-clic à l'écran, en pixels.y: Integer— Position verticale du double-clic à l'écran, en pixels.button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si les deux clics ont été envoyés ; false si le curseur n'a pas pu être déplacé vers le point, auquel cas rien n'est cliqué, ou si Windows a bloqué les clics. Un bouton inconnu arrête le script avec une erreur.
MouseGetCursorX
MouseGetCursorX() → Integer
Renvoie la position horizontale du curseur de la souris à l'écran.
Paramètres
Aucun paramètre.
Renvoie
La position x du curseur en pixels d'écran ; négative sur un écran situé à gauche de l'écran principal.
8 exemples: Chaîne else-if, Déplacer la souris en cercle, Lire la couleur du pixel sous le curseur, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur, Décrire ce qui se trouve sous le curseur, Cliquer quelque part, puis remettre le curseur en place, Un glissement scripté, Maj+clic
MouseGetCursorY
MouseGetCursorY() → Integer
Renvoie la position verticale du curseur de la souris à l'écran.
Paramètres
Aucun paramètre.
Renvoie
La position y du curseur en pixels d'écran ; négative sur un écran situé au-dessus de l'écran principal.
8 exemples: Chaîne else-if, Déplacer la souris en cercle, Lire la couleur du pixel sous le curseur, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur, Décrire ce qui se trouve sous le curseur, Cliquer quelque part, puis remettre le curseur en place, Un glissement scripté, Maj+clic
MouseIsButtonDown
MouseIsButtonDown(button: Integer) → Bool
Vérifie si un bouton de la souris est maintenu enfoncé en ce moment.
Paramètres
button: Integer— Une constante MouseButton, telle que MouseButton.Primary. Primary et Secondary suivent le paramètre d'inversion des boutons de Windows ; Left et Right sont les boutons physiques.
Renvoie
true si le bouton est enfoncé ; false s'il est relâché. Un bouton inconnu arrête le script avec une erreur.
MouseLockToRect
MouseLockToRect(x: Integer, y: Integer, width: Integer, height: Integer) → Bool
Confine le curseur de la souris dans un rectangle de l'écran. Le verrouillage survit au script jusqu'à l'appel de MouseUnlock ou jusqu'à ce qu'un autre programme le modifie : déverrouillez donc toujours une fois terminé.
Paramètres
x: Integer— Bord gauche du rectangle, en pixels d'écran.y: Integer— Bord supérieur du rectangle, en pixels d'écran.width: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.height: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.
Renvoie
true si le curseur est désormais confiné ; false si width ou height n'est pas positif ou si Windows a refusé.
1 exemple: Confiner le curseur à une fenêtre pendant 5 secondes
MouseMoveTo
MouseMoveTo(x: Integer, y: Integer) → Bool · Simple
Déplace le curseur de la souris vers un point de l'écran sur n'importe quel écran, comme si l'utilisateur avait déplacé la souris.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels.y: Integer— Position verticale à l'écran, en pixels.
Renvoie
true si le déplacement a été envoyé ; false si Windows l'a bloqué.
3 exemples: Déplacer la souris en cercle, Cliquer quelque part, puis remettre le curseur en place, Un glissement scripté
MouseScrollHorizontal
MouseScrollHorizontal(amount: Integer) → Bool · Simple
Fait tourner la molette horizontale de la souris à la position actuelle du curseur. Utilisez d'abord MouseMoveTo pour faire défiler ailleurs.
Paramètres
amount: Integer— Distance de molette, où 120 correspond à un cran : une valeur positive fait défiler vers la droite, une valeur négative vers la gauche. Les valeurs plus petites font défiler plus finement dans les applications qui le prennent en charge.
Renvoie
true si le défilement a été envoyé ; false si Windows l'a bloqué.
1 exemple: Faire défiler par crans
MouseScrollVertical
MouseScrollVertical(amount: Integer) → Bool · Simple
Fait tourner la molette verticale de la souris à la position actuelle du curseur. Utilisez d'abord MouseMoveTo pour faire défiler ailleurs.
Paramètres
amount: Integer— Distance de molette, où 120 correspond à un cran : une valeur positive fait défiler vers le haut, une valeur négative vers le bas. Les valeurs plus petites font défiler plus finement dans les applications qui le prennent en charge.
Renvoie
true si le défilement a été envoyé ; false si Windows l'a bloqué.
1 exemple: Faire défiler par crans
MouseUnlock
MouseUnlock() → Bool
Libère le curseur de la souris de tout confinement, qu'il ait été défini par MouseLockToRect ou par un autre programme.
Paramètres
Aucun paramètre.
Renvoie
true si le curseur est libre ; false si Windows a refusé.
1 exemple: Confiner le curseur à une fenêtre pendant 5 secondes
Multimedia
MultimediaGetMute
MultimediaGetMute(endpoint: Integer) → Bool
Indique si le son du périphérique de lecture ou du microphone par défaut choisi par endpoint est coupé dans Windows.
Paramètres
endpoint: Integer— Le périphérique à vérifier : AudioEndpoint.Playback (haut-parleurs ou casque par défaut), AudioEndpoint.Capture (microphone par défaut) ou AudioEndpoint.Communications (le microphone que Windows utilise pour les appels). Toute autre valeur arrête l'action avec une erreur.
Renvoie
true si le son du périphérique est coupé ; false s'il ne l'est pas ou si le périphérique n'existe pas (par exemple, aucun microphone n'est connecté).
1 exemple: Activer ou désactiver le micro
MultimediaGetVolume
MultimediaGetVolume(endpoint: Integer) → Real
Renvoie le volume principal du périphérique de lecture ou du microphone par défaut choisi par endpoint, sous forme de Real de 0.0 à 1.0.
Paramètres
endpoint: Integer— Le périphérique à lire : AudioEndpoint.Playback (haut-parleurs ou casque par défaut), AudioEndpoint.Capture (microphone par défaut) ou AudioEndpoint.Communications (le microphone que Windows utilise pour les appels). Toute autre valeur arrête l'action avec une erreur.
Renvoie
Le volume de 0.0 (silence) à 1.0 (maximum), sur la même échelle que MultimediaSetVolume ; 0.0 si le périphérique n'existe pas.
1 exemple: Augmenter le volume avec un affichage à l'écran
MultimediaPlayMp3File
MultimediaPlayMp3File(path: Text) → Bool · Simple
Commence la lecture d'un fichier MP3 et retourne immédiatement pendant la lecture. Lancer un autre MP3 arrête celui qui est encore en cours de lecture.
Paramètres
path: Text— Chemin complet du fichier .mp3, par exemple C:/Music/done.mp3.
Renvoie
true si la lecture a commencé ; false si le fichier est manquant, si Windows ne peut pas l'ouvrir ni le lire dans un délai de 10 secondes, ou si l'arrêt de toutes les actions a mis fin à l'attente.
MultimediaPlayWavFile
MultimediaPlayWavFile(path: Text) → Bool · Simple
Commence la lecture d'un fichier son .wav et retourne immédiatement pendant la lecture. Lancer un autre WAV arrête celui qui est encore en cours de lecture. Seuls les fichiers .wav fonctionnent ; utilisez MultimediaPlayMp3File pour les MP3.
Paramètres
path: Text— Chemin complet du fichier .wav, par exemple C:/Windows/Media/chimes.wav.
Renvoie
true si le fichier existe et que la lecture a démarré ; false s'il n'y a aucun fichier à ce chemin. Un fichier existant qui n'est pas un WAV lisible renvoie true et ne joue rien.
1 exemple: Lire un son
MultimediaSetMute
MultimediaSetMute(endpoint: Integer, muted: Bool) → Bool · Simple
Coupe ou rétablit le son du périphérique de lecture ou du microphone par défaut choisi par endpoint, comme le bouton Muet du volume de Windows.
Paramètres
endpoint: Integer— Le périphérique à modifier : AudioEndpoint.Playback (haut-parleurs ou casque par défaut), AudioEndpoint.Capture (microphone par défaut) ou AudioEndpoint.Communications (le microphone que Windows utilise pour les appels). Toute autre valeur arrête l'action avec une erreur.muted: Bool— true pour couper le son du périphérique ; false pour le rétablir.
Renvoie
true si l'état de coupure du son a été défini ; false si le périphérique n'existe pas ou a refusé la modification.
1 exemple: Une bascule qui persiste entre les exécutions
MultimediaSetVolume
MultimediaSetVolume(endpoint: Integer, level: Real) → Bool · Simple
Règle le volume principal du périphérique de lecture ou du microphone par défaut choisi par endpoint sur un niveau précis.
Paramètres
endpoint: Integer— Le périphérique à modifier : AudioEndpoint.Playback (haut-parleurs ou casque par défaut), AudioEndpoint.Capture (microphone par défaut) ou AudioEndpoint.Communications (le microphone que Windows utilise pour les appels). Toute autre valeur arrête l'action avec une erreur.level: Real— Le nouveau volume de 0.0 (silence) à 1.0 (maximum) ; 0.5 correspond à 50 sur le curseur de volume de Windows. Les valeurs hors de la plage 0.0 à 1.0 sont ramenées dans cette plage.
Renvoie
true si le volume a été réglé ; false si le périphérique n'existe pas ou a refusé la modification.
2 exemples: Augmenter le volume avec un affichage à l'écran, Transformer un bouton rotatif Arduino en réglage du volume
MultimediaToggleMute
MultimediaToggleMute(endpoint: Integer) → Bool · Simple
Coupe le son du périphérique de lecture ou du microphone par défaut choisi par endpoint s'il est actif, ou le rétablit s'il est coupé. Appelez ensuite MultimediaGetMute pour connaître le nouvel état.
Paramètres
endpoint: Integer— Le périphérique à basculer : AudioEndpoint.Playback (haut-parleurs ou casque par défaut), AudioEndpoint.Capture (microphone par défaut) ou AudioEndpoint.Communications (le microphone que Windows utilise pour les appels). Toute autre valeur arrête l'action avec une erreur.
Renvoie
true si l'état de coupure du son a été basculé ; false si le périphérique n'existe pas ou a refusé la modification. Il ne s'agit pas du nouvel état de coupure du son.
1 exemple: Activer ou désactiver le micro
Plugin
PluginSendMessage
PluginSendMessage(pluginName: Text, message: Text, timeoutSeconds: Integer) → Text
Envoie un message texte à un plugin en cours d'exécution qui accepte des commandes et attend sa réponse. Un plugin traite un message à la fois ; les messages envoyés pendant qu'il est occupé attendent dans une file.
Paramètres
pluginName: Text— Le nom d'affichage du plugin, comparé exactement, casse comprise.message: Text— Le texte à envoyer. Sa signification dépend du plugin.timeoutSeconds: Integer— Durée d'attente de la réponse, en secondes, de 0 à 10 ; toute autre valeur arrête le script avec une erreur. Avec 0, l'appel retourne immédiatement un texte vide.
Renvoie
La réponse du plugin, ou un texte vide s'il n'a pas répondu à temps. Un plugin introuvable parmi ceux en cours d'exécution, une file pleine ou un message trop long arrête le script avec une erreur.
1 exemple: Communiquer avec un plugin
Region
RegionGetCellIndexAt
RegionGetCellIndexAt(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, pointX: Integer, pointY: Integer) → Integer
Divise un rectangle en une grille de colonnes et de lignes et renvoie la cellule qui contient un point. Les cellules sont numérotées à partir de 0, de gauche à droite, puis de haut en bas.
Paramètres
rectX: Integer— Bord gauche du rectangle à diviser, en pixels.rectY: Integer— Bord supérieur du rectangle à diviser, en pixels.rectWidth: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.rectHeight: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.columns: Integer— Nombre de colonnes de la grille. Doit être supérieur à 0. Les pixels restants sont attribués un par un aux premières colonnes.rows: Integer— Nombre de lignes de la grille. Doit être supérieur à 0. Les pixels restants sont attribués un par un aux premières lignes.pointX: Integer— Position horizontale du point à rechercher, dans les mêmes pixels que rectX.pointY: Integer— Position verticale du point à rechercher, dans les mêmes pixels que rectY.
Renvoie
Le numéro de la cellule (ligne multipliée par columns, plus colonne), ou -1 si le point est hors du rectangle ou si rectWidth, rectHeight, columns ou rows n'est pas positif.
1 exemple: Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
RegionGetHeight
RegionGetHeight(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer
Renvoie la hauteur d'une cellule lorsqu'un rectangle est divisé en une grille de colonnes et de lignes. Les pixels restants sont attribués un par un aux premières lignes.
Paramètres
rectX: Integer— Bord gauche du rectangle à diviser, en pixels.rectY: Integer— Bord supérieur du rectangle à diviser, en pixels.rectWidth: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.rectHeight: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.columns: Integer— Nombre de colonnes de la grille. Doit être supérieur à 0.rows: Integer— Nombre de lignes de la grille. Doit être supérieur à 0.index: Integer— Numéro de cellule à partir de zéro, compté de gauche à droite, puis de haut en bas, de 0 à columns multiplié par rows moins 1.
Renvoie
La hauteur de la cellule en pixels, ou -1 si index est hors limites ou si rectWidth, rectHeight, columns ou rows n'est pas positif.
1 exemple: Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
RegionGetWidth
RegionGetWidth(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer
Renvoie la largeur d'une cellule lorsqu'un rectangle est divisé en une grille de colonnes et de lignes. Les pixels restants sont attribués un par un aux premières colonnes.
Paramètres
rectX: Integer— Bord gauche du rectangle à diviser, en pixels.rectY: Integer— Bord supérieur du rectangle à diviser, en pixels.rectWidth: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.rectHeight: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.columns: Integer— Nombre de colonnes de la grille. Doit être supérieur à 0.rows: Integer— Nombre de lignes de la grille. Doit être supérieur à 0.index: Integer— Numéro de cellule à partir de zéro, compté de gauche à droite, puis de haut en bas, de 0 à columns multiplié par rows moins 1.
Renvoie
La largeur de la cellule en pixels, ou -1 si index est hors limites ou si rectWidth, rectHeight, columns ou rows n'est pas positif.
1 exemple: Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
RegionGetX
RegionGetX(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer
Renvoie le bord gauche d'une cellule lorsqu'un rectangle est divisé en une grille de colonnes et de lignes. Les pixels restants sont attribués un par un aux premières colonnes.
Paramètres
rectX: Integer— Bord gauche du rectangle à diviser, en pixels.rectY: Integer— Bord supérieur du rectangle à diviser, en pixels.rectWidth: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.rectHeight: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.columns: Integer— Nombre de colonnes de la grille. Doit être supérieur à 0.rows: Integer— Nombre de lignes de la grille. Doit être supérieur à 0.index: Integer— Numéro de cellule à partir de zéro, compté de gauche à droite, puis de haut en bas, de 0 à columns multiplié par rows moins 1.
Renvoie
Le bord gauche de la cellule, ou -1 si index est hors limites ou si rectWidth, rectHeight, columns ou rows n'est pas positif. Une cellule réelle peut aussi commencer à -1 : vérifiez donc d'abord index.
1 exemple: Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
RegionGetY
RegionGetY(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer
Renvoie le bord supérieur d'une cellule lorsqu'un rectangle est divisé en une grille de colonnes et de lignes. Les pixels restants sont attribués un par un aux premières lignes.
Paramètres
rectX: Integer— Bord gauche du rectangle à diviser, en pixels.rectY: Integer— Bord supérieur du rectangle à diviser, en pixels.rectWidth: Integer— Largeur du rectangle, en pixels. Doit être supérieure à 0.rectHeight: Integer— Hauteur du rectangle, en pixels. Doit être supérieure à 0.columns: Integer— Nombre de colonnes de la grille. Doit être supérieur à 0.rows: Integer— Nombre de lignes de la grille. Doit être supérieur à 0.index: Integer— Numéro de cellule à partir de zéro, compté de gauche à droite, puis de haut en bas, de 0 à columns multiplié par rows moins 1.
Renvoie
Le bord supérieur de la cellule, ou -1 si index est hors limites ou si rectWidth, rectHeight, columns ou rows n'est pas positif. Une cellule réelle peut aussi commencer à -1 : vérifiez donc d'abord index.
1 exemple: Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
Serial
SerialClosePort
SerialClosePort(port: Text) → Bool
Ferme un port COM ouvert avec SerialOpenPort, le libérant pour d'autres programmes tels que l'Arduino IDE. Les lignes reçues pas encore lues sont supprimées.
Paramètres
port: Text— Le nom du port transmis à SerialOpenPort, par exemple COM3. La casse n'a pas d'importance.
Renvoie
true si le port était ouvert et est maintenant fermé ; false s'il n'était pas ouvert ou si un moniteur série le détient (utilisez SerialMonitorDelete).
1 exemple: Poser une question à un périphérique série
SerialEnumeratePorts
SerialEnumeratePorts() → Integer
Recherche les ports série (COM) de cet ordinateur, par exemple un Arduino, un ESP32 ou un adaptateur USB-série branché en USB, et renvoie leur nombre. Lisez chaque nom avec SerialGetEnumeratedPortAt.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de ports COM trouvés, ou 0 s'il n'y en a aucun.
1 exemple: Lister les ports COM
SerialGetEnumeratedPortAt
SerialGetEnumeratedPortAt(index: Integer) → Text
Renvoie un nom de port, par exemple COM3, de la liste établie par le dernier appel à SerialEnumeratePorts dans cette exécution du script. Le Gestionnaire de périphériques indique quel appareil se trouve sur quel port.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre moins 1. Les noms sont triés par numéro : COM3 vient donc avant COM10.
Renvoie
Le nom du port, ou un texte vide si index est hors limites ou si SerialEnumeratePorts n'a pas été appelée.
1 exemple: Lister les ports COM
SerialGetTextLine
SerialGetTextLine(port: Text, timeoutSeconds: Integer, baudRate: Integer) → Text
Attend la prochaine ligne complète d'un port COM et la renvoie, par exemple une mesure de capteur, une lecture de code-barres ou la réponse d'un appareil. Bloque le script pendant au plus timeoutSeconds ; l'arrêt de toutes les actions met fin à l'attente.
Paramètres
port: Text— Le nom du port, par exemple COM3. Ouvrez-le d'abord avec SerialOpenPort pour choisir les paramètres et conserver les lignes qui arrivent en avance ; sinon, il est ouvert à baudRate uniquement pour cette attente.timeoutSeconds: Integer— Durée d'attente maximale, en secondes. 0 attend qu'une ligne arrive ou que le script soit arrêté. Une valeur négative arrête le script avec une erreur.baudRate: Integer— Vitesse en bits par seconde, utilisée seulement lorsque cet appel ouvre lui-même le port, par exemple 9600 ou 115200 ; ignorée pour un port ouvert avec SerialOpenPort. 0 ou moins arrête le script avec une erreur.
Renvoie
La ligne sans son terminateur, ou un texte vide si aucune ligne n'est arrivée à temps, si le port n'a pas pu être ouvert ou si l'appareil a été débranché. Arrête le script avec une erreur si un moniteur série détient le port.
2 exemples: Poser une question à un périphérique série, Garder ouvert le port d'un Arduino et lui envoyer des commandes
SerialMonitorCreate
SerialMonitorCreate(name: Text, port: Text, baudRate: Integer, parity: Integer, dataBits: Integer, stopBits: Integer, terminator: Text, script: Text) → Bool
Ouvre un port COM et exécute un script pour chaque ligne envoyée par l'appareil, par exemple pour transformer un boîtier de boutons Arduino ou un pavé de macros en raccourcis. Le moniteur continue après la fin de ce script. L'arrêt de toutes les actions arrête le script en cours pour une ligne et abandonne les lignes en attente ; le moniteur continue.
Paramètres
name: Text— Un nom pour le moniteur. Réutiliser le nom du moniteur actuel de ce port le remplace ; un nom qui surveille déjà un autre port arrête le script avec une erreur. La casse n'a pas d'importance.port: Text— Le nom du port, par exemple COM3. Le Gestionnaire de périphériques indique sur quel port se trouve une carte.baudRate: Integer— Vitesse en bits par seconde. Elle doit correspondre à celle de l'appareil, par exemple le 9600 ou le 115200 du Serial.begin d'un croquis Arduino.parity: Integer— Une constante SerialParity. La plupart des appareils, y compris les cartes Arduino, utilisent SerialParity.None.dataBits: Integer— Bits par caractère, sous forme de nombre simple. Presque tous les appareils utilisent 8.stopBits: Integer— Une constante SerialStopBits, généralement SerialStopBits.One. Utilisez la constante : le nombre simple 1 signifie un bit d'arrêt et demi.terminator: Text— Le texte qui termine chaque ligne : il est retiré des lignes reçues et ajouté à chaque ligne envoyée par SerialWriteTextLine. Un texte vide signifie CR LF, ce qu'envoie le Serial.println d'Arduino. Utilisez '\n' pour les appareils qui terminent les lignes par LF seul, ou '\r' pour CR seul.script: Text— Le script à exécuter pour chaque ligne reçue, sous forme de Text. Il lit la ligne avec ContextGetSerialTextLine. Les lignes sont traitées une à la fois, dans leur ordre d'arrivée ; jusqu'à 256 lignes attendent pendant l'exécution du script, et au-delà les plus anciennes sont abandonnées.
Renvoie
true dès que le moniteur est actif ; false si le port est absent, débranché ou utilisé par un autre programme. Arrête le script avec une erreur si le port est ouvert avec SerialOpenPort ou surveillé sous un autre nom, ou si ce nom surveille déjà un autre port. Débrancher l'appareil met fin au moniteur et inscrit une ligne dans l'onglet Système de la console.
2 exemples: Associer les boutons d'un périphérique série à des touches multimédias, Transformer un bouton rotatif Arduino en réglage du volume
SerialMonitorDelete
SerialMonitorDelete(name: Text) → Bool
Arrête un moniteur série créé avec SerialMonitorCreate et ferme son port COM, afin que d'autres programmes puissent de nouveau utiliser le port. Les lignes pas encore traitées sont abandonnées ; un script déjà en cours se termine.
Paramètres
name: Text— Le nom transmis à SerialMonitorCreate. La casse n'a pas d'importance.
Renvoie
true si un moniteur portant ce nom a été trouvé et arrêté ; false s'il n'y en avait aucun.
SerialMonitorDeleteAll
SerialMonitorDeleteAll() → Bool
Arrête tous les moniteurs série et ferme leurs ports COM. Les ports ouverts avec SerialOpenPort restent ouverts.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
SerialMonitorGetCount
SerialMonitorGetCount() → Integer
Renvoie le nombre de moniteurs série actifs et prend un instantané de leurs noms pour SerialMonitorGetEnumeratedNameAt.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de moniteurs série actifs, ou 0 s'il n'y en a aucun.
SerialMonitorGetEnumeratedNameAt
SerialMonitorGetEnumeratedNameAt(index: Integer) → Text
Renvoie un nom de moniteur de l'instantané pris par le dernier appel à SerialMonitorGetCount dans cette exécution du script.
Paramètres
index: Integer— Position dans l'instantané, de 0 au nombre moins 1. L'ordre n'a aucune signification.
Renvoie
Le nom du moniteur, ou un texte vide si index est hors limites ou si SerialMonitorGetCount n'a pas été appelée.
SerialOpenPort
SerialOpenPort(port: Text, baudRate: Integer, parity: Integer, dataBits: Integer, stopBits: Integer, terminator: Text) → Bool
Ouvre un port COM et le garde ouvert jusqu'à SerialClosePort, en collectant chaque ligne reçue pour SerialGetTextLine. L'ouverture active les signaux DTR et RTS, ce qui redémarre de nombreuses cartes Arduino, exactement comme le fait l'Arduino IDE : ouvrez-le donc une seule fois et réutilisez-le.
Paramètres
port: Text— Le nom du port, par exemple COM3. Le Gestionnaire de périphériques ou SerialEnumeratePorts l'indique. Un texte vide arrête le script avec une erreur.baudRate: Integer— Vitesse en bits par seconde. Elle doit correspondre à celle de l'appareil, par exemple le 9600 ou le 115200 du Serial.begin d'un croquis Arduino.parity: Integer— Une constante SerialParity. La plupart des appareils, y compris les cartes Arduino, utilisent SerialParity.None.dataBits: Integer— Bits par caractère, sous forme de nombre simple. Presque tous les appareils utilisent 8.stopBits: Integer— Une constante SerialStopBits, généralement SerialStopBits.One. Utilisez la constante : le nombre simple 1 signifie un bit d'arrêt et demi.terminator: Text— Le texte qui termine chaque ligne : il est retiré des lignes reçues et ajouté à chaque ligne envoyée par SerialWriteTextLine. Un texte vide signifie CR LF, ce qu'envoie le Serial.println d'Arduino. Utilisez '\n' pour les appareils qui terminent les lignes par LF seul, ou '\r' pour CR seul.
Renvoie
true si le port est ouvert ; false s'il est absent, débranché, utilisé par un autre programme tel qu'un moniteur série, ou s'il a refusé les paramètres. Arrête le script avec une erreur si Input.Observer a déjà ouvert le port ou si un moniteur série le détient.
2 exemples: Poser une question à un périphérique série, Garder ouvert le port d'un Arduino et lui envoyer des commandes
SerialWriteTextLine
SerialWriteTextLine(port: Text, text: Text, baudRate: Integer) → Bool
Envoie une ligne de texte suivie de la fin de ligne du port à un port COM, par exemple une commande pour un Arduino ou une ligne de G-code pour une imprimante 3D. Fonctionne sur un port ouvert avec SerialOpenPort ou détenu par un moniteur série, afin que le script d'un moniteur puisse répondre à son appareil. Un port qui n'est pas ouvert est ouvert à baudRate, 8-N-1, uniquement pour cette écriture.
Paramètres
port: Text— Le nom du port, par exemple COM3. Ouvrez-le d'abord avec SerialOpenPort pour choisir les paramètres et éviter de redémarrer les cartes qui se réinitialisent à l'ouverture du port.text: Text— La ligne à envoyer, encodée en UTF-8. N'ajoutez pas de fin de ligne : le terminateur avec lequel le port a été ouvert est ajouté, ou CR LF lorsque cet appel ouvre lui-même le port.baudRate: Integer— Vitesse en bits par seconde, utilisée seulement lorsque cet appel ouvre lui-même le port, par exemple 9600 ou 115200 ; ignorée pour un port déjà ouvert ou surveillé. 0 ou moins arrête le script avec une erreur.
Renvoie
true si la ligne a été envoyée ; false si le port n'a pas pu être ouvert ou si l'écriture a échoué ou expiré.
2 exemples: Poser une question à un périphérique série, Garder ouvert le port d'un Arduino et lui envoyer des commandes
Shell
ShellEmptyRecycleBins
ShellEmptyRecycleBins() → Bool · Simple
Supprime définitivement tout le contenu de la Corbeille sur tous les lecteurs, sans demander de confirmation. Cette opération est irréversible.
Paramètres
Aucun paramètre.
Renvoie
true si les Corbeilles ont été vidées ou étaient déjà vides ; false sinon.
ShellEnumerateProcessIdsByExeRegex
ShellEnumerateProcessIdsByExeRegex(pattern: Text) → Integer
Recherche tous les processus en cours d'exécution dont le nom de fichier du programme, par exemple notepad.exe, correspond à une expression régulière, et renvoie leur nombre. Lisez chaque ID de processus avec ShellGetEnumeratedProcessIdAt.
Paramètres
pattern: Text— Une expression régulière, comparée sans tenir compte de la casse au seul nom de fichier, et non au chemin complet. Utilisez ^ et $ pour faire correspondre le nom entier, par exemple ^notepad[.]exe$.
Renvoie
Le nombre de processus correspondants, ou 0 si aucun ne correspond. Un modèle non valide arrête le script avec une erreur.
1 exemple: Du processus à la fenêtre
ShellExpandEnvironmentVariables
ShellExpandEnvironmentVariables(text: Text) → Text
Remplace par sa valeur chaque variable d'environnement de text, écrite sous la forme d'un nom entre deux signes pour cent, par exemple USERPROFILE ou TEMP. Utile pour construire des chemins qui fonctionnent sur n'importe quel PC.
Paramètres
text: Text— Texte contenant des noms de variables d'environnement entre signes pour cent, par exemple un chemin dans le dossier de profil de l'utilisateur.
Renvoie
Le texte avec chaque variable connue remplacée ; les variables inconnues sont laissées telles quelles. Un texte vide si l'expansion échoue.
8 exemples: La date du jour, et un nom de fichier horodaté, Capturer la zone que vous avez entourée, Enregistrer une image copiée dans un fichier, Ajouter à un fichier journal, Compter les types de fichiers d'un dossier, Sauvegarder un fichier avant de le modifier, Surveiller un dossier, Développer des variables d'environnement
ShellGetEnumeratedProcessIdAt
ShellGetEnumeratedProcessIdAt(index: Integer) → Integer
Renvoie un ID de processus de la liste établie par le dernier appel à ShellEnumerateProcessIdsByExeRegex dans cette exécution du script.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre moins 1.
Renvoie
L'ID de processus, ou 0 si index est hors limites ou si ShellEnumerateProcessIdsByExeRegex n'a pas été appelée.
1 exemple: Du processus à la fenêtre
ShellGetSystemMetricsByIndex
ShellGetSystemMetricsByIndex(index: Integer) → Integer
Renvoie une mesure ou un paramètre du système Windows à partir de son index GetSystemMetrics, par exemple 0 pour la largeur de l'écran principal ou 80 pour le nombre d'écrans.
Paramètres
index: Integer— Un numéro d'index Windows SM_, par exemple 0 (SM_CXSCREEN) ou 1 (SM_CYSCREEN). Il n'existe pas de constantes nommées pour ces valeurs.
Renvoie
La valeur indiquée par Windows, souvent en pixels, ou 0 pour un index inconnu.
ShellRun
ShellRun(command: Text) → Bool · Simple
Exécute un programme ou ouvre un fichier, un dossier ou une adresse web, comme si vous le tapiez dans la boîte de dialogue Exécuter de Windows (Win+R). N'attend pas la fin du programme.
Paramètres
command: Text— Un nom de programme tel que notepad.exe, un chemin ou une adresse web, éventuellement suivi d'arguments. Placez entre guillemets simples un chemin contenant des espaces lorsqu'il est suivi d'arguments.
Renvoie
true si Windows l'a démarré ; false s'il est introuvable ou n'a pas pu être démarré. Aucune boîte d'erreur de Windows ne s'affiche en cas d'échec.
4 exemples: Boucle while : attendre une fenêtre, avec un délai maximal, Lancer un programme, attendre sa fenêtre, agir dessus, Rechercher sur le web le texte sélectionné, Rechercher la sélection sur le web
ShellRunOrActivate
ShellRunOrActivate(exeName: Text) → Bool · Simple
Amène la fenêtre d'un programme au premier plan si le programme est déjà en cours d'exécution, ou exécute la commande dans le cas contraire. Utile pour un geste qui mène toujours au même programme.
Paramètres
exeName: Text— Le nom de fichier du programme, par exemple notepad ou notepad.exe, ou son chemin complet, éventuellement suivi d'arguments utilisés seulement s'il faut le démarrer. Les fenêtres en cours d'exécution sont identifiées par le nom de fichier du premier mot, auquel .exe est ajouté s'il n'a pas d'extension ; placez entre guillemets simples un chemin contenant des espaces.
Renvoie
true si une fenêtre a été amenée au premier plan ou si le programme a été démarré ; false si Windows a refusé d'amener la fenêtre au premier plan ou si le démarrage a échoué.
1 exemple: Lancer une application ou basculer vers elle
ShellRunProgram
ShellRunProgram(path: Text, arguments: Text, verb: Any, windowStyle: Integer, waitForExit: Bool) → Bool
Exécute un programme ou ouvre un fichier avec une action choisie (verbe) et un style de fenêtre, et peut attendre sa fermeture. Utilisez ShellVerb.RunAs pour exécuter un programme en tant qu'administrateur.
Paramètres
path: Text— Le programme, le document ou le dossier à ouvrir, par exemple notepad.exe ou un chemin de fichier complet.arguments: Text— Les arguments de ligne de commande du programme, ou un texte vide pour aucun.verb: Any— Une constante ShellVerb, telle que ShellVerb.Open ou ShellVerb.Print, ou tout verbe pris en charge par le type de fichier, sous forme de Text. Un texte vide utilise l'action par défaut.windowStyle: Integer— Une constante WindowStyle : WindowStyle.Normal, WindowStyle.Minimized, WindowStyle.Maximized ou WindowStyle.Hidden. Toute autre valeur arrête le script avec une erreur. Certains programmes l'ignorent.waitForExit: Bool— true pour bloquer le script jusqu'à la fermeture du programme ; l'arrêt de toutes les actions met fin à l'attente et laisse le programme s'exécuter. false pour continuer immédiatement.
Renvoie
true si Windows l'a démarré (et, avec waitForExit, s'il s'est fermé) ; false s'il n'a pas pu démarrer, si la demande d'élévation administrateur a été refusée ou si l'arrêt de toutes les actions a mis fin à l'attente. Aucune boîte d'erreur de Windows ne s'affiche en cas d'échec.
2 exemples: Exécuter un programme avec un verbe et un style de fenêtre, Exécuter et attendre la fin
ShellRunStoreApp
ShellRunStoreApp(packageName: Text) → Bool · Simple
Démarre une application du Microsoft Store installée à partir de son nom de package, d'une partie de celui-ci ou de son nom dans le menu Démarrer, par exemple Microsoft.WindowsCalculator ou Calculatrice. Les programmes de bureau ordinaires ne sont pas pris en compte ; utilisez ShellRun pour ceux-ci.
Paramètres
packageName: Text— Le nom de famille de package de l'application ou une partie de celui-ci, ou son nom exact dans le menu Démarrer, comparé sans tenir compte de la casse. Un nom de famille de package exact l'emporte, puis un nom exact du menu Démarrer, puis la première application dont le nom de famille de package contient le texte.
Renvoie
true si l'application a été démarrée ; false si packageName est vide, si aucune application du Store installée ne correspond ou si le démarrage a échoué.
ShellShowToast
ShellShowToast(title: Text, message: Text) → Bool · Simple
Affiche une notification Windows (toast) avec un titre et un message. Attend seulement que Windows l'accepte, pas qu'elle soit fermée.
Paramètres
title: Text— La première ligne de la notification, en gras.message: Text— Le texte affiché sous le titre.
Renvoie
true si la notification a été affichée ; false si les notifications sont désactivées dans les paramètres généraux, si Windows l'a refusée ou si l'arrêt de toutes les actions a mis fin à l'attente.
9 exemples: Épingler une fenêtre au premier plan, Capturer la zone que vous avez entourée, Enregistrer une image copiée dans un fichier, Une bascule qui persiste entre les exécutions, Une notification Windows, Activer ou désactiver le micro, Exécuter et attendre la fin, Passer au profil de gestes suivant, État du moteur
ShellTerminateProcess
ShellTerminateProcess(processId: Integer) → Bool
Met fin immédiatement à un processus, comme Fin de tâche dans le Gestionnaire des tâches. Le travail non enregistré dans ce programme est perdu.
Paramètres
processId: Integer— L'ID de processus, issu par exemple de WindowGetProcessId ou de ShellGetEnumeratedProcessIdAt. Une valeur inférieure ou égale à 0, le processus d'Input.Observer lui-même et les processus système de Windows arrêtent le script avec une erreur.
Renvoie
true s'il a été mis fin au processus ; false s'il s'était déjà terminé ou si Windows a refusé l'accès, par exemple pour un programme exécuté en tant qu'administrateur.
Snippet
SnippetExecuteScript
SnippetExecuteScript(name: Text) → Bool · Simple
Exécute l'extrait portant ce nom et attend qu'il se termine. L'extrait voit le contexte de déclenchement de l'appelant, mais a ses propres variables.
Paramètres
name: Text— Le nom de l'extrait, comparé exactement, casse comprise.
Renvoie
true si l'extrait s'est exécuté jusqu'au bout ; false si aucun extrait ne porte ce nom, ou si l'extrait est vide, contient une erreur ou a été arrêté.
1 exemple: Des extraits comme fonctions réutilisables
SnippetGetScript
SnippetGetScript(name: Text) → Text
Renvoie le texte de script de l'extrait portant ce nom sans l'exécuter, par exemple pour le transmettre à TimerCreate.
Paramètres
name: Text— Le nom de l'extrait, comparé exactement, casse comprise.
Renvoie
Le texte de script de l'extrait, ou un texte vide si aucun extrait ne porte ce nom.
1 exemple: Script de minuteur tiré d'un extrait, sans échappement
Storage
StorageClearAll
StorageClearAll() → Bool
Supprime toutes les valeurs stockées avec StorageSetValue, pour toutes les actions. Les valeurs persistantes ne sont pas affectées.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
StorageClearAllPersistent
StorageClearAllPersistent() → Bool
Supprime toutes les valeurs persistantes et les efface de storage.toml, afin qu'aucune ne revienne après un redémarrage. Les valeurs stockées avec StorageSetValue ne sont pas affectées.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
StorageClearPersistentValue
StorageClearPersistentValue(key: Text) → Bool
Supprime une valeur persistante et l'efface de storage.toml. Il ne se passe rien si la clé n'est pas stockée.
Paramètres
key: Text— Le nom de la valeur à supprimer. Les majuscules et les minuscules sont distinguées.
Renvoie
Toujours true, que la clé ait été stockée ou non.
StorageClearValue
StorageClearValue(key: Text) → Bool
Supprime une valeur stockée avec StorageSetValue. Il ne se passe rien si la clé n'est pas stockée.
Paramètres
key: Text— Le nom de la valeur à supprimer. Les majuscules et les minuscules sont distinguées.
Renvoie
Toujours true, que la clé ait été stockée ou non.
StorageGetPersistentValue
StorageGetPersistentValue(key: Text) → Any
Lit une valeur enregistrée avec StorageSetPersistentValue, y compris une valeur enregistrée avant le dernier redémarrage d'Input.Observer.
Paramètres
key: Text— Le nom sous lequel la valeur a été enregistrée. Les majuscules et les minuscules sont distinguées.
Renvoie
La valeur stockée avec son type (Bool, Integer, Real ou Text), ou l'Integer 0 si la clé n'est pas stockée. Utilisez StorageHasPersistentValue pour distinguer une clé absente d'un 0 stocké.
1 exemple: Un compteur qui survit à un redémarrage
StorageGetValue
StorageGetValue(key: Text) → Any
Lit une valeur stockée avec StorageSetValue par cette action ou une autre depuis le démarrage d'Input.Observer.
Paramètres
key: Text— Le nom sous lequel la valeur a été stockée. Les majuscules et les minuscules sont distinguées.
Renvoie
La valeur stockée avec son type (Bool, Integer, Real, Text ou Window), ou l'Integer 0 si la clé n'est pas stockée. Utilisez StorageHasValue pour distinguer une clé absente d'un 0 stocké.
5 exemples: && et || évaluent les deux côtés, Un minuteur répétitif qui compte, Une bascule qui persiste entre les exécutions, Une liste conservée dans Storage, Des extraits comme fonctions réutilisables
StorageHasPersistentValue
StorageHasPersistentValue(key: Text) → Bool
Vérifie si une valeur persistante est stockée sous un nom. Utilisez-la pour distinguer une clé absente d'un 0, d'un false ou d'un texte vide stocké.
Paramètres
key: Text— Le nom à rechercher. Les majuscules et les minuscules sont distinguées.
Renvoie
true si une valeur persistante est stockée sous key ; false sinon.
StorageHasValue
StorageHasValue(key: Text) → Bool
Vérifie si une valeur est stockée sous un nom avec StorageSetValue. Utilisez-la pour distinguer une clé absente d'un 0, d'un false ou d'un texte vide stocké.
Paramètres
key: Text— Le nom à rechercher. Les majuscules et les minuscules sont distinguées.
Renvoie
true si une valeur est stockée sous key ; false sinon.
StorageSetPersistentValue
StorageSetPersistentValue(key: Text, value: Any) → Bool
Enregistre une valeur sous un nom qui survit à un redémarrage, dans storage.toml à côté du fichier de configuration. Le fichier est en texte brut, jamais chiffré : n'y conservez pas de mots de passe ni d'autres secrets.
Paramètres
key: Text— Le nom sous lequel enregistrer, jusqu'à 256 caractères. Les majuscules et les minuscules sont distinguées. Remplace toute valeur déjà stockée sous ce nom.value: Any— La valeur à enregistrer : un Bool, un Integer, un Real ou un Text (jusqu'à 32 768 caractères). Elle est restituée avec le même type. Une Window ne peut pas être enregistrée.
Renvoie
true dès que la valeur est stockée. false lorsque storage.toml existait mais n'a pas pu être lu au démarrage : l'enregistrement est alors désactivé jusqu'au prochain démarrage, et la valeur n'est conservée que jusqu'à la fermeture d'Input.Observer. Une valeur Window, une clé de plus de 256 caractères, un Text de plus de 32 768 caractères ou une nouvelle clé au-delà de 1 024 valeurs stockées arrête l'action avec une erreur.
1 exemple: Un compteur qui survit à un redémarrage
StorageSetValue
StorageSetValue(key: Text, value: Any) → Bool
Stocke une valeur sous un nom afin que les exécutions ultérieures de cette action ou d'une autre puissent la lire. Les valeurs sont conservées jusqu'à la fermeture d'Input.Observer ; utilisez StorageSetPersistentValue pour en conserver une après un redémarrage.
Paramètres
key: Text— Le nom sous lequel stocker, jusqu'à 256 caractères. Les majuscules et les minuscules sont distinguées. Remplace toute valeur déjà stockée sous ce nom, quel que soit son type.value: Any— La valeur à stocker : un Bool, un Integer, un Real, un Text (jusqu'à 32 768 caractères) ou une Window. Elle est restituée avec le même type.
Renvoie
true dès que la valeur est stockée. Une clé de plus de 256 caractères, un Text de plus de 32 768 caractères ou une nouvelle clé au-delà de 1 024 valeurs stockées arrête l'action avec une erreur.
5 exemples: && et || évaluent les deux côtés, Un minuteur répétitif qui compte, Une bascule qui persiste entre les exécutions, Une liste conservée dans Storage, Des extraits comme fonctions réutilisables
String
StringContains
StringContains(text: Text, search: Text) → Bool
Vérifie si un texte contient un autre fragment de texte, à n'importe quel endroit. Les majuscules et les minuscules doivent correspondre ; utilisez StringToLower sur les deux pour une vérification sans respect de la casse.
Paramètres
text: Text— Le texte dans lequel rechercher.search: Text— Le texte à rechercher.
Renvoie
true si search figure dans text, ou si search est vide ; false sinon.
1 exemple: Comparaisons insensibles à la casse
StringEndsWith
StringEndsWith(text: Text, suffix: Text) → Bool
Vérifie si un texte se termine par un fragment de texte donné, par exemple une extension de fichier. Les majuscules et les minuscules doivent correspondre.
Paramètres
text: Text— Le texte à vérifier.suffix: Text— La fin à rechercher, par exemple '.pdf'.
Renvoie
true si text se termine par suffix, ou si suffix est vide ; false sinon.
1 exemple: Compter les types de fichiers d'un dossier
StringFormat
StringFormat(format: Text, value0: Any, value1: Any) → Text
Construit un texte en remplaçant chaque {0} de format par value0 et chaque {1} par value1. C'est ainsi que l'on convertit un nombre, un Bool ou une fenêtre en Text.
Paramètres
format: Text— Le texte contenant les espaces réservés {0} et {1}. Il n'existe pas de {2} ; imbriquez les appels pour davantage de valeurs. {0} est remplacé en premier : un {1} contenu dans value0 est donc remplacé lui aussi.value0: Any— La valeur de {0}, de n'importe quel type.value1: Any— La valeur de {1}, de n'importe quel type. Transmettez un texte vide si format ne contient pas de {1}.
Renvoie
Le texte de format avec les espaces réservés remplacés. Un Real s'affiche avec six décimales ; true et false s'affichent sous forme de mots.
50 exemples: Les cinq types de valeurs, Boucles de comptage : croissantes, décroissantes et par pas, Boucles imbriquées : une table de multiplication, while (true) avec un indicateur de sortie, Surprises de priorité, && et || évaluent les deux côtés, Égalité entre types différents, L'arithmétique entre types mélangés se replie sur 0, Commentaires, instructions vides et blocs, Division Integer ou Real, et division par zéro, Reste sans %, Arrondis et fonctions mathématiques sur les Real, Limiter une valeur à une plage, Nombres aléatoires et pile ou face, Longueur du tracé d'un geste, Mettre en forme un Real sans six décimales, Masques d'indicateurs : activer, désactiver, inverser, tester, Lire la couleur du pixel sous le curseur, Compter les bits à 1, Cas limites des décalages, Échanger deux Integer, Bits d'état des touches, Mettre en forme plus de deux valeurs, Découper et parcourir, Découpages imbriqués : paires clé=valeur, Dernier index de : une extension de fichier, Compléter un nombre par des zéros, Compter les mots du Presse-papiers, L'ordre du texte est ordinal, Constantes nommées ou nombres bruts, Lister les fenêtres de niveau supérieur visibles, Réduire toutes les fenêtres d'une application, Fermer des fenêtres selon un motif de titre, après confirmation, Inspecter les contrôles enfants d'une fenêtre, Du processus à la fenêtre, Décrire ce qui se trouve sous le curseur, Tout ce que sait le contexte de déclenchement, Ajouter à un fichier journal, Lire un fichier et compter ses lignes, Compter les types de fichiers d'un dossier, Un minuteur répétitif qui compte, Un compteur qui survit à un redémarrage, Une liste conservée dans Storage, Augmenter le volume avec un affichage à l'écran, Un message affiché qui se met à jour en direct, Une notification Windows, Lister les écrans, État du moteur, Des extraits comme fonctions réutilisables, Garder ouvert le port d'un Arduino et lui envoyer des commandes
StringFromNumber
StringFromNumber(number: Any, decimals: Integer, invariantCulture: Bool) → Text
Convertit un nombre en texte, soit dans le format régional de l'utilisateur avec regroupement des chiffres pour l'affichage, soit dans un format machine fixe pour les fichiers et les appareils.
Paramètres
number: Any— L'Integer ou le Real à convertir.decimals: Integer— Le nombre de chiffres après le séparateur décimal, de 0 à 15, avec arrondi ; ou -1 pour autant que la valeur en nécessite (aucun pour un Integer).invariantCulture: Bool— true pour un texte machine : un point comme séparateur décimal, sans regroupement, relisible avec StringToNumber(text, true). false pour le format régional de l'utilisateur.
Renvoie
Le nombre sous forme de texte, par exemple 1 234,50 ou 1234.5. Un texte vide si un Real n'est pas un nombre fini. Une valeur qui n'est pas un nombre, ou une valeur decimals hors limites, arrête l'action avec une erreur.
1 exemple: Lire un nombre saisi par quelqu'un
StringGetIndexOf
StringGetIndexOf(text: Text, search: Text) → Integer
Trouve la position de la première occurrence d'un fragment de texte dans un autre. Les majuscules et les minuscules doivent correspondre. Les positions commencent à 0.
Paramètres
text: Text— Le texte dans lequel rechercher.search: Text— Le texte à rechercher.
Renvoie
La position, à partir de 0, de la première occurrence, 0 si search est vide, ou -1 si search ne figure pas dans text.
1 exemple: && et || évaluent les deux côtés
StringGetLength
StringGetLength(text: Text) → Integer
Renvoie le nombre de caractères d'un texte, espaces et sauts de ligne compris. Les positions utilisées par StringGetSubstring se comptent de la même façon.
Paramètres
text: Text— Le texte à mesurer.
Renvoie
Le nombre de caractères, ou 0 pour un texte vide. Certains emojis et caractères rares comptent pour 2.
3 exemples: Dernier index de : une extension de fichier, Compléter un nombre par des zéros, Inverser un Text
StringGetSplitPartAt
StringGetSplitPartAt(index: Integer) → Text
Renvoie une partie issue de l'appel à StringSplit le plus récent dans cette exécution du script.
Paramètres
index: Integer— Le numéro de la partie, à partir de 0, de 0 au nombre renvoyé par StringSplit moins 1.
Renvoie
Le texte de la partie, ou un texte vide si index est hors limites ou si StringSplit n'a pas été appelée dans cette exécution.
6 exemples: break et continue, Découper et parcourir, Découpages imbriqués : paires clé=valeur, Compter les mots du Presse-papiers, Joindre les lignes du Presse-papiers en une seule, Lire un fichier et compter ses lignes
StringGetSubstring
StringGetSubstring(text: Text, start: Integer, length: Integer) → Text
Renvoie une partie d'un texte : au plus length caractères, à partir de la position start. Les positions commencent à 0.
Paramètres
text: Text— Le texte dont extraire la partie.start: Integer— La position, à partir de 0, du premier caractère à extraire. Ne doit pas être négative.length: Integer— Le nombre maximal de caractères à extraire. Ne doit pas être négatif.
Renvoie
La partie demandée, plus courte si le texte se termine avant, ou un texte vide si start est à la fin ou au-delà. Un start ou un length négatif arrête l'action avec une erreur.
4 exemples: && et || évaluent les deux côtés, Integer en texte hexadécimal, Dernier index de : une extension de fichier, Inverser un Text
StringIsNumber
StringIsNumber(text: Text, invariantCulture: Bool) → Bool
Vérifie si un texte est un nombre que StringToNumber peut lire, par exemple ce qu'un utilisateur a tapé dans UIShowInputBox. Les espaces autour du nombre sont ignorés.
Paramètres
text: Text— Le texte à vérifier.invariantCulture: Bool— true pour un texte machine : un point comme séparateur décimal et aucun regroupement des chiffres. false pour le format régional de l'utilisateur, tel qu'une personne le saisirait ; les groupes de chiffres doivent alors respecter la taille des groupes de ce format.
Renvoie
true si text est un nombre dans le format choisi ; false sinon, y compris pour un texte vide.
2 exemples: Lire un nombre saisi par quelqu'un, Transformer un bouton rotatif Arduino en réglage du volume
StringRegexGetGroupAt
StringRegexGetGroupAt(index: Integer) → Text
Renvoie la correspondance entière ou un groupe de capture de l'appel réussi à StringRegexMatch le plus récent dans cette exécution du script.
Paramètres
index: Integer— 0 pour la correspondance entière ; 1 et plus pour les groupes de capture, dans l'ordre d'apparition de leurs parenthèses ouvrantes. Les groupes nommés sont également numérotés.
Renvoie
Le texte correspondant, ou un texte vide si index est hors limites, si le groupe n'a pas participé à la correspondance ou si le dernier StringRegexMatch n'a trouvé aucune correspondance.
1 exemple: Extraire une valeur d'un texte copié avec une expression régulière
StringRegexMatch
StringRegexMatch(text: Text, pattern: Text) → Bool
Vérifie si une expression régulière (syntaxe PCRE2) correspond à un endroit quelconque du texte, et mémorise la correspondance et ses groupes pour StringRegexGetGroupAt.
Paramètres
text: Text— Le texte dans lequel rechercher.pattern: Text— L'expression régulière. Respecte la casse ; commencez-la par (?i) pour ignorer la casse. Les classes de caractères telles que mot et chiffre suivent Unicode.
Renvoie
true si le modèle correspond ; false sinon. Un modèle non valide, ou qui nécessite trop d'étapes sur ce texte, arrête l'action avec une erreur.
1 exemple: Extraire une valeur d'un texte copié avec une expression régulière
StringRegexReplace
StringRegexReplace(text: Text, pattern: Text, replacement: Text) → Text
Remplace chaque correspondance d'une expression régulière (syntaxe PCRE2) dans un texte, par un texte de remplacement qui peut inclure les groupes capturés.
Paramètres
text: Text— Le texte à modifier.pattern: Text— L'expression régulière. Respecte la casse ; commencez-la par (?i) pour ignorer la casse.replacement: Text— Le texte à mettre à la place de chaque correspondance. $1 ou ${1} insère le groupe 1, ${name} un groupe nommé, $0 la correspondance entière, et $$ un signe dollar littéral.
Renvoie
Le texte avec chaque correspondance remplacée, ou text inchangé si rien ne correspond. Un modèle ou un remplacement non valide, un trop grand nombre d'étapes ou un résultat de plus de 16 millions de caractères arrête l'action avec une erreur.
1 exemple: Extraire une valeur d'un texte copié avec une expression régulière
StringReplace
StringReplace(text: Text, search: Text, replacement: Text) → Text
Remplace chaque occurrence d'un fragment de texte par un autre. Les majuscules et les minuscules doivent correspondre. La recherche porte sur du texte littéral, pas sur un modèle.
Paramètres
text: Text— Le texte à modifier.search: Text— Le texte à rechercher. Ne doit pas être vide.replacement: Text— Le texte à mettre à sa place. Peut être vide pour supprimer chaque occurrence.
Renvoie
Le texte avec chaque occurrence remplacée, ou text inchangé si search n'y figure pas. Un search vide arrête l'action avec une erreur.
3 exemples: Compter les mots du Presse-papiers, Remplir un modèle et le coller, Rechercher la sélection sur le web
StringSplit
StringSplit(text: Text, delimiter: Text) → Integer
Découpe un texte en parties à chaque occurrence d'un délimiteur et mémorise les parties pour StringGetSplitPartAt. Des délimiteurs adjacents, ou un délimiteur à l'une des extrémités, donnent des parties vides.
Paramètres
text: Text— Le texte à découper.delimiter: Text— Le texte littéral auquel découper, par exemple ',' ou un saut de ligne. Ne doit pas être vide.
Renvoie
Le nombre de parties, au moins 1. Un délimiteur vide arrête l'action avec une erreur.
6 exemples: break et continue, Découper et parcourir, Découpages imbriqués : paires clé=valeur, Compter les mots du Presse-papiers, Joindre les lignes du Presse-papiers en une seule, Lire un fichier et compter ses lignes
StringStartsWith
StringStartsWith(text: Text, prefix: Text) → Bool
Vérifie si un texte commence par un fragment de texte donné. Les majuscules et les minuscules doivent correspondre.
Paramètres
text: Text— Le texte à vérifier.prefix: Text— Le début à rechercher.
Renvoie
true si text commence par prefix, ou si prefix est vide ; false sinon.
2 exemples: break et continue, Lire un fichier et compter ses lignes
StringToLower
StringToLower(text: Text) → Text
Convertit un texte en minuscules, selon les règles de casse du format régional Windows de l'utilisateur (par exemple le i avec et sans point du turc).
Paramètres
text: Text— Le texte à convertir.
Renvoie
Le texte en minuscules, ou text inchangé si Windows ne peut pas le convertir.
4 exemples: Comparaisons insensibles à la casse, L'ordre du texte est ordinal, Laisser passer un dessin non reconnu, Compter les types de fichiers d'un dossier
StringToNumber
StringToNumber(text: Text, invariantCulture: Bool) → Any
Lit un nombre dans un texte, par exemple une saisie de l'utilisateur, un fichier ou un appareil série. Les espaces autour du nombre sont ignorés ; un exposant tel que 1.5e3 est autorisé.
Paramètres
text: Text— Le texte à lire.invariantCulture: Bool— true pour un texte machine : un point comme séparateur décimal et aucun regroupement des chiffres, donc '1,5' n'est pas un nombre. false pour le format régional de l'utilisateur, tel qu'une personne le saisirait ; les groupes de chiffres doivent alors respecter ce format : '1 234,5' se lit en français (France), mais pas '12 34,5'.
Renvoie
Un Integer si le texte ne contient ni séparateur décimal ni exposant et que la valeur tient, sinon un Real. 0 si le texte n'est pas un nombre ; vérifiez d'abord avec StringIsNumber.
2 exemples: Lire un nombre saisi par quelqu'un, Transformer un bouton rotatif Arduino en réglage du volume
StringToUpper
StringToUpper(text: Text) → Text
Convertit un texte en majuscules, selon les règles de casse du format régional Windows de l'utilisateur (par exemple le i avec et sans point du turc).
Paramètres
text: Text— Le texte à convertir.
Renvoie
Le texte en majuscules, ou text inchangé si Windows ne peut pas le convertir.
2 exemples: Mettre en majuscules le texte sélectionné, Sauvegarder un fichier avant de le modifier
StringTrim
StringTrim(text: Text) → Text
Supprime les espaces, tabulations, sauts de ligne et autres espaces blancs au début et à la fin d'un texte. Les espaces blancs à l'intérieur du texte sont conservés.
Paramètres
text: Text— Le texte à nettoyer.
Renvoie
Le texte nettoyé, ou un texte vide si text ne contenait que des espaces blancs.
6 exemples: Compter les mots du Presse-papiers, Joindre les lignes du Presse-papiers en une seule, Rechercher sur le web le texte sélectionné, Rechercher la sélection sur le web, Lire un fichier et compter ses lignes, Associer les boutons d'un périphérique série à des touches multimédias
StringUrlEncode
StringUrlEncode(text: Text) → Text · Simple
Encode un texte afin qu'il puisse figurer dans une adresse web, par exemple un terme de recherche construit à partir du texte sélectionné. N'encodez que la valeur, pas l'adresse entière.
Paramètres
text: Text— Le texte à encoder, par exemple un terme de recherche.
Renvoie
Le texte encodé : les lettres, les chiffres et - . _ ~ restent tels quels ; tout autre octet du texte UTF-8 devient le signe pour cent suivi de deux chiffres hexadécimaux. Un espace devient le signe pour cent suivi de 20, et non un signe plus.
1 exemple: Rechercher sur le web le texte sélectionné
Style
StyleGetCurrent
StyleGetCurrent() → Text · Simple
Renvoie la clé du style de tracé que le plugin de rendu dessine actuellement, par exemple neonglow, ou shuffle lorsque Shuffle est sélectionné.
Paramètres
Aucun paramètre.
Renvoie
La clé du style, le style par défaut du moteur de rendu lorsque rien d'utilisable n'est sélectionné, ou un texte vide lorsqu'aucun moteur de rendu n'est en cours d'exécution ou qu'il n'a pas indiqué ses styles.
StyleNext
StyleNext() → Bool · Simple
Sélectionne le style de tracé déverrouillé suivant dans la liste du moteur de rendu, en revenant au début après le dernier. Le nouveau style est dessiné à partir du geste suivant.
Paramètres
Aucun paramètre.
Renvoie
true si un changement de style a été demandé ; false lorsqu'aucun moteur de rendu n'est en cours d'exécution ou qu'il n'y a aucun autre style à sélectionner.
StyleSet
StyleSet(key: Text) → Bool · Simple
Sélectionne le style de tracé du moteur de rendu portant cette clé, dessiné à partir du geste suivant. Un bouton de tracé qui a son propre style le conserve.
Paramètres
key: Text— La clé du style, par exemple neonglow ou auto ; ne respecte pas la casse. Utilisez shuffle pour un style différent à chaque geste.
Renvoie
true si le changement de style a été demandé ; false si aucun moteur de rendu n'est en cours d'exécution, si aucun style ne porte cette clé ou si le style est verrouillé.
System
SystemHibernate
SystemHibernate() → Bool · Simple
Met l'ordinateur en veille prolongée sans demander de confirmation. Le script attend ici et reprend après la remise sous tension de l'ordinateur. Ne fait rien si la veille prolongée est désactivée dans Windows.
Paramètres
Aucun paramètre.
Renvoie
true après que l'ordinateur est passé en veille prolongée puis a repris ; false si la veille prolongée n'est pas disponible ou si Windows a refusé.
SystemLock
SystemLock() → Bool · Simple
Verrouille l'ordinateur et affiche l'écran de connexion de Windows, comme Windows+L. Les applications continuent de s'exécuter.
Paramètres
Aucun paramètre.
Renvoie
true si Windows a verrouillé l'ordinateur ; false si Windows a refusé, par exemple parce qu'une stratégie désactive le verrouillage.
SystemMonitorOff
SystemMonitorOff() → Bool · Simple
Éteint les écrans. Le prochain mouvement de la souris ou la prochaine frappe les rallume : un script lancé par un geste doit donc d'abord appeler UtilityWait(500).
Paramètres
Aucun paramètre.
Renvoie
true dès que la demande a été envoyée à Windows ; false si elle n'a pas pu être envoyée.
SystemRestart
SystemRestart(force: Bool) → Bool · Simple
Redémarre l'ordinateur sans demander de confirmation ; Windows ferme d'abord les applications en cours d'exécution. Affichez d'abord UIShowMessageBox si vous souhaitez une confirmation.
Paramètres
force: Bool— false permet aux applications de proposer d'enregistrer le travail non enregistré (seules les applications qui ne répondent pas sont fermées de force) ; true ferme immédiatement toutes les applications et le travail non enregistré est perdu.
Renvoie
true si Windows a accepté la demande de redémarrage (il la poursuit ensuite de lui-même) ; false si Windows l'a refusée.
SystemShutDown
SystemShutDown(force: Bool) → Bool · Simple
Arrête et éteint l'ordinateur sans demander de confirmation. Affichez d'abord UIShowMessageBox si vous souhaitez une confirmation.
Paramètres
force: Bool— false permet aux applications de proposer d'enregistrer le travail non enregistré (seules les applications qui ne répondent pas sont fermées de force) ; true ferme immédiatement toutes les applications et le travail non enregistré est perdu.
Renvoie
true si Windows a accepté la demande d'arrêt (il la poursuit ensuite de lui-même) ; false si Windows l'a refusée.
SystemSignOut
SystemSignOut(force: Bool) → Bool · Simple
Déconnecte l'utilisateur actuel de Windows sans demander de confirmation, en fermant toutes les applications et Input.Observer avec elles.
Paramètres
force: Bool— false permet aux applications de proposer d'enregistrer le travail non enregistré (seules les applications qui ne répondent pas sont fermées de force) ; true ferme immédiatement toutes les applications et le travail non enregistré est perdu.
Renvoie
true si Windows a accepté la demande de déconnexion (il la poursuit ensuite de lui-même) ; false si Windows l'a refusée.
SystemSleep
SystemSleep() → Bool · Simple
Met l'ordinateur en veille sans demander de confirmation. Le script attend ici et reprend à la sortie de veille de l'ordinateur. Sur un ordinateur doté de la veille moderne (Modern Standby), ne fait rien ; utilisez plutôt SystemMonitorOff.
Paramètres
Aucun paramètre.
Renvoie
true après que l'ordinateur s'est mis en veille puis réveillé ; false si cet ordinateur n'a aucun état de veille qu'un programme peut déclencher, ou si Windows a refusé.
Timer
TimerCreate
TimerCreate(name: Text, startDelayMs: Integer, intervalMs: Integer, repeatCount: Integer, script: Text) → Bool
Crée un minuteur nommé qui exécute un texte de script après un délai, puis à intervalle fixe, ou remplace le minuteur portant ce nom. Les minuteurs continuent après la fin du script, jusqu'à leur suppression ou la fermeture du moteur.
Paramètres
name: Text— Un nom pour le minuteur, utilisé par TimerDelete. Respecte la casse ; un minuteur existant portant ce nom est remplacé.startDelayMs: Integer— Délai avant la première exécution, en millisecondes ; 0 ou plus.intervalMs: Integer— Temps entre deux exécutions, en millisecondes ; 1 ou plus. Une exécution n'attend pas la fin de la précédente.repeatCount: Integer— Nombre total d'exécutions ; 0 répète jusqu'à la suppression du minuteur.script: Text— Le texte de script à exécuter à chaque déclenchement. Il s'exécute de façon autonome, sans contexte de déclencheur ni aucune des variables de ce script.
Renvoie
true dès que le minuteur est défini. Un startDelayMs ou un repeatCount négatif, ou un intervalMs inférieur à 1, arrête le script avec une erreur.
2 exemples: Un minuteur répétitif qui compte, Script de minuteur tiré d'un extrait, sans échappement
TimerDelete
TimerDelete(name: Text) → Bool
Supprime le minuteur portant ce nom afin qu'il ne s'exécute plus.
Paramètres
name: Text— Le nom du minuteur, tel qu'il a été transmis à TimerCreate. Respecte la casse.
Renvoie
true si le minuteur existait et a été supprimé ; false s'il n'y avait aucun minuteur portant ce nom.
1 exemple: Lister et arrêter des minuteurs
TimerDeleteAll
TimerDeleteAll() → Bool
Supprime tous les minuteurs créés avec TimerCreate, afin qu'aucun d'eux ne s'exécute plus.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
1 exemple: Lister et arrêter des minuteurs
TimerEnumerateAll
TimerEnumerateAll() → Integer
Établit la liste des noms de tous les minuteurs actuels et renvoie leur nombre. Lisez chaque nom avec TimerGetEnumeratedNameAt.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de minuteurs, ou 0 s'il n'y en a aucun.
1 exemple: Lister et arrêter des minuteurs
TimerGetEnumeratedNameAt
TimerGetEnumeratedNameAt(index: Integer) → Text
Renvoie un nom de minuteur de la liste établie en dernier par TimerEnumerateAll dans ce script.
Paramètres
index: Integer— Position dans la liste, à partir de zéro, de 0 au nombre moins 1. L'ordre n'a aucune signification.
Renvoie
Le nom du minuteur, ou un texte vide si index est hors limites ou si TimerEnumerateAll n'a pas été appelée.
1 exemple: Lister et arrêter des minuteurs
Tray
TrayMinimizeWindow
TrayMinimizeWindow(window: Window) → Bool
Masque une fenêtre et affiche pour elle une icône dans la zone de notification, avec l'icône et le titre propres à la fenêtre. Cliquer sur l'icône restaure la fenêtre à son emplacement. Pour un contrôle, c'est sa fenêtre de niveau supérieur qui est masquée.
Paramètres
window: Window— La fenêtre à masquer, par exemple ContextGetWindow().
Renvoie
true si la demande a été acceptée ; false pour une fenêtre nulle ou qui n'existe plus.
1 exemple: Masquer une fenêtre dans la zone de notification
TrayRestoreAllWindows
TrayRestoreAllWindows() → Bool
Restaure toutes les fenêtres masquées avec TrayMinimizeWindow et retire leurs icônes de la zone de notification.
Paramètres
Aucun paramètre.
Renvoie
true si la demande a été envoyée ; false si le moteur n'a pas fini de démarrer.
UI
UIClearPrintLog
UIClearPrintLog() → Bool
Efface l'onglet Utilisateur de la console de diagnostic, où apparaît la sortie d'UtilityPrint, y compris la sortie enregistrée pendant que la console était fermée.
Paramètres
Aucun paramètre.
Renvoie
Toujours true.
UICloseDisplayMessage
UICloseDisplayMessage(sessionId: Integer) → Bool
Ferme un message à l'écran ouvert par UIShowDisplayMessage. Ne fait rien si ce message est déjà fermé.
Paramètres
sessionId: Integer— L'identifiant renvoyé par UIShowDisplayMessage pour le message à fermer.
Renvoie
Toujours true, y compris lorsque le message était déjà fermé.
1 exemple: Un message affiché qui se met à jour en direct
UIGetCulture
UIGetCulture() → Text
Renvoie la langue et la région qu'Input.Observer utilise pour ses propres textes (menu de la zone de notification, messages, textes d'erreur), telles que définies par UISetCulture, le paramètre de langue ou Windows.
Paramètres
Aucun paramètre.
Renvoie
Le nom de culture tel qu'il a été défini, par exemple en-US ou es-ES, même lorsque la traduction d'une autre région le remplace.
UISetCulture
UISetCulture(culture: Text) → Bool
Change la langue qu'Input.Observer utilise pour ses propres textes (menu de la zone de notification, messages, textes d'erreur) jusqu'à sa fermeture ou jusqu'à une modification du paramètre de langue. Ne modifie ni la fenêtre des paramètres ni le paramètre enregistré.
Paramètres
culture: Text— Un nom de culture tel que en-US, de-DE ou es-MX.
Renvoie
true si la culture a été appliquée ; false, et la langue reste inchangée, si culture n'est pas une culture connue de Windows ou si Input.Observer n'a aucune traduction dans sa langue. Une autre région d'une langue traduite, par exemple es-ES, est acceptée.
UIShowConsole
UIShowConsole() → Bool
Ouvre la console de diagnostic, ou l'amène au premier plan si elle est déjà ouverte, et attend qu'elle soit ouverte. Si la configuration est protégée par un mot de passe, attend pendant la demande du mot de passe. Seul le bouton de fermeture de la console elle-même la ferme.
Paramètres
Aucun paramètre.
Renvoie
true dès que la console est ouverte ; false si elle ne s'est pas ouverte, par exemple parce que la demande de mot de passe a été annulée ou que l'état enregistré de la console ne peut pas être lu.
UIShowDisplayMessage
UIShowDisplayMessage(title: Text, message: Text, durationMs: Integer, opacity: Real, location: Any, titleFontFamily: Text, titleFontSizePt: Integer, titleBold: Bool, titleItalic: Bool, messageFontFamily: Text, messageFontSizePt: Integer, messageBold: Bool, messageItalic: Bool, foreColor: Text, backColor: Text, paddingPx: Integer, usePrimaryScreen: Bool, titleAlign: Integer, messageAlign: Integer) → Integer · Simple
Affiche un panneau comportant une ligne de titre et une ligne de message à un emplacement fixe de l'écran, et retourne immédiatement. Plusieurs panneaux peuvent être ouverts en même temps ; conservez l'identifiant renvoyé pour mettre à jour ou fermer celui-ci.
Paramètres
title: Text— Texte de la ligne du haut, dessiné avec la police du titre. Un texte vide omet la ligne.message: Text— Texte de la deuxième ligne, dessiné avec la police du message. Un texte long passe à la ligne sur plusieurs lignes. Un texte vide omet la ligne.durationMs: Integer— Durée d'affichage du panneau, en millisecondes. Une valeur inférieure ou égale à 0 le conserve jusqu'à ce qu'UICloseDisplayMessage le ferme (le panneau intégré se ferme aussi par un double-clic).opacity: Real— Opacité du panneau, de 0.05 (presque invisible) à 1.0 (entièrement opaque). Les valeurs hors de cette plage sont ramenées dans celle-ci.location: Any— L'emplacement d'affichage : une constante Location telle que Location.BottomCenter (placée dans la zone de l'écran non couverte par la barre des tâches), ou un Text 'x,y' sans espaces donnant le coin supérieur gauche du panneau en pixels d'écran, par exemple '100,200'. Toute autre valeur arrête l'action avec une erreur.titleFontFamily: Text— Nom de la police de la ligne de titre, par exemple Segoe UI.titleFontSizePt: Integer— Taille de la police du titre, en points. Les valeurs inférieures à 1 comptent comme 1.titleBold: Bool— true pour dessiner la ligne de titre en gras.titleItalic: Bool— true pour dessiner la ligne de titre en italique.messageFontFamily: Text— Nom de la police de la ligne de message, par exemple Segoe UI.messageFontSizePt: Integer— Taille de la police du message, en points. Les valeurs inférieures à 1 comptent comme 1.messageBold: Bool— true pour dessiner la ligne de message en gras.messageItalic: Bool— true pour dessiner la ligne de message en italique.foreColor: Text— Couleur du texte des deux lignes : un nom de couleur tel que white ou black, '#RRGGBB', ou 'R,G,B' avec chaque nombre de 0 à 255 et sans espaces. Toute autre valeur arrête l'action avec une erreur.backColor: Text— Couleur d'arrière-plan, sous les mêmes formes que foreColor, par exemple '#F7F7F5'. Utilisez opacity, et non la couleur, pour rendre le panneau transparent.paddingPx: Integer— Espace vide autour du texte, en pixels pour une mise à l'échelle de l'affichage de 100 pour cent ; il augmente avec l'échelle d'affichage. Les valeurs inférieures à 0 comptent comme 0.usePrimaryScreen: Bool— true pour placer une Location sur l'écran principal ; false pour utiliser l'écran où se trouve actuellement le pointeur de la souris. Ignoré pour un emplacement 'x,y'.titleAlign: Integer— Alignement de la ligne de titre : TextAlign.Left, TextAlign.Center ou TextAlign.Right. Toute autre valeur arrête l'action avec une erreur.messageAlign: Integer— Alignement de la ligne de message : TextAlign.Left, TextAlign.Center ou TextAlign.Right. Toute autre valeur arrête l'action avec une erreur.
Renvoie
L'identifiant de session du message, toujours supérieur à 0, pour UIUpdateDisplayMessage et UICloseDisplayMessage. Un identifiant est renvoyé même lorsque les messages sont désactivés dans les paramètres et que rien n'apparaît.
2 exemples: Augmenter le volume avec un affichage à l'écran, Un message affiché qui se met à jour en direct
UIShowInputBox
UIShowInputBox(prompt: Text, title: Text, defaultText: Text) → Text · Simple
Affiche une boîte qui demande à l'utilisateur de taper une ligne de texte, avec les boutons OK et Annuler. Bloque le script jusqu'à la fermeture de la boîte, puis rend le focus à la fenêtre qui l'avait.
Paramètres
prompt: Text— La question affichée au-dessus du champ de texte. Un texte de plus de 2000 caractères est tronqué.title: Text— Titre affiché dans la barre de titre de la boîte.defaultText: Text— Texte déjà présent dans le champ à l'ouverture de la boîte, sélectionné pour que la saisie le remplace. Utilisez un texte vide pour un champ vide.
Renvoie
Le texte tapé lorsque l'utilisateur clique sur OK (jusqu'à 4096 caractères), ou un texte vide sur Annuler, Échap ou le bouton de fermeture. Un OK avec un champ vide renvoie aussi un texte vide.
2 exemples: Lire un nombre saisi par quelqu'un, Un geste, plusieurs choix
UIShowMenu
UIShowMenu(items: Text) → Integer · Simple
Affiche un menu contextuel au niveau du pointeur de la souris, afin qu'un même geste ou raccourci clavier puisse proposer plusieurs choix. Bloque le script jusqu'à ce que l'utilisateur choisisse un élément ou ferme le menu.
Paramètres
items: Text— Les éléments du menu, un par ligne. Une ligne ne contenant que - est un séparateur ; les lignes vides sont ignorées. De 1 à 100 éléments, sinon l'action s'arrête avec une erreur ; un élément de plus de 260 caractères est tronqué. Placez & devant une lettre pour en faire la touche de raccourci de l'élément ; && affiche un seul &.
Renvoie
La position, à partir de 0, de l'élément choisi, en ne comptant que les éléments (pas les séparateurs), ou -1 si le menu a été fermé ou n'a pas pu être affiché.
1 exemple: Un geste, plusieurs choix
UIShowMessageBox
UIShowMessageBox(message: Text, title: Text, buttons: Text, icon: Text) → Text · Simple
Affiche une boîte de message Windows standard devant les autres fenêtres et attend que l'utilisateur appuie sur un bouton. Bloque le script jusqu'à la fermeture de la boîte.
Paramètres
message: Text— Le texte du message affiché dans la boîte.title: Text— Titre affiché dans la barre de titre de la boîte.buttons: Text— Les boutons à afficher, écrits exactement ainsi : OK, OKCancel, YesNo, YesNoCancel, RetryCancel ou AbortRetryIgnore. Toute autre valeur arrête l'action avec une erreur.icon: Text— L'icône à afficher, écrite exactement ainsi : None, Information, Warning, Error ou Question. Toute autre valeur arrête l'action avec une erreur.
Renvoie
Le bouton enfoncé : OK, Cancel, Yes, No, Retry, Abort ou Ignore (fermer la boîte avec Échap ou son bouton de fermeture renvoie Cancel lorsqu'il y a un bouton Annuler). Un texte vide si la boîte n'a pas pu être affichée.
3 exemples: Lire un nombre saisi par quelqu'un, Fermer des fenêtres selon un motif de titre, après confirmation, Poser une question
UIShowSettings
UIShowSettings() → Bool · Simple
Ouvre la fenêtre des paramètres d'Input.Observer, ou l'amène au premier plan si elle est déjà ouverte. Retourne sans attendre la fin du chargement de la fenêtre.
Paramètres
Aucun paramètre.
Renvoie
true si la fenêtre des paramètres a été amenée au premier plan ou démarrée ; false si Input.Observer.UI.exe est manquant, n'a pas pu être démarré, ou si le moteur n'a pas répondu dans les 3 secondes.
UIUpdateDisplayMessage
UIUpdateDisplayMessage(sessionId: Integer, title: Text, message: Text, durationMs: Integer, opacity: Real, location: Any, titleFontFamily: Text, titleFontSizePt: Integer, titleBold: Bool, titleItalic: Bool, messageFontFamily: Text, messageFontSizePt: Integer, messageBold: Bool, messageItalic: Bool, foreColor: Text, backColor: Text, paddingPx: Integer, usePrimaryScreen: Bool, titleAlign: Integer, messageAlign: Integer) → Bool
Remplace toutes les caractéristiques d'un panneau UIShowDisplayMessage ouvert (texte, position, polices, couleurs et durée) par de nouvelles valeurs. La durée repart de cet appel.
Paramètres
sessionId: Integer— L'identifiant renvoyé par UIShowDisplayMessage pour le message à modifier.title: Text— Nouveau texte de la ligne du haut, dessiné avec la police du titre. Un texte vide omet la ligne.message: Text— Nouveau texte de la deuxième ligne, dessiné avec la police du message. Un texte long passe à la ligne sur plusieurs lignes. Un texte vide omet la ligne.durationMs: Integer— Durée d'affichage du panneau à partir de maintenant, en millisecondes. Une valeur inférieure ou égale à 0 le conserve jusqu'à ce qu'UICloseDisplayMessage le ferme (le panneau intégré se ferme aussi par un double-clic).opacity: Real— Opacité du panneau, de 0.05 (presque invisible) à 1.0 (entièrement opaque). Les valeurs hors de cette plage sont ramenées dans celle-ci.location: Any— L'emplacement d'affichage : une constante Location telle que Location.BottomCenter (placée dans la zone de l'écran non couverte par la barre des tâches), ou un Text 'x,y' sans espaces donnant le coin supérieur gauche du panneau en pixels d'écran, par exemple '100,200'. Toute autre valeur arrête l'action avec une erreur.titleFontFamily: Text— Nom de la police de la ligne de titre, par exemple Segoe UI.titleFontSizePt: Integer— Taille de la police du titre, en points. Les valeurs inférieures à 1 comptent comme 1.titleBold: Bool— true pour dessiner la ligne de titre en gras.titleItalic: Bool— true pour dessiner la ligne de titre en italique.messageFontFamily: Text— Nom de la police de la ligne de message, par exemple Segoe UI.messageFontSizePt: Integer— Taille de la police du message, en points. Les valeurs inférieures à 1 comptent comme 1.messageBold: Bool— true pour dessiner la ligne de message en gras.messageItalic: Bool— true pour dessiner la ligne de message en italique.foreColor: Text— Couleur du texte des deux lignes : un nom de couleur tel que white ou black, '#RRGGBB', ou 'R,G,B' avec chaque nombre de 0 à 255 et sans espaces. Toute autre valeur arrête l'action avec une erreur.backColor: Text— Couleur d'arrière-plan, sous les mêmes formes que foreColor, par exemple '#F7F7F5'. Utilisez opacity, et non la couleur, pour rendre le panneau transparent.paddingPx: Integer— Espace vide autour du texte, en pixels pour une mise à l'échelle de l'affichage de 100 pour cent ; il augmente avec l'échelle d'affichage. Les valeurs inférieures à 0 comptent comme 0.usePrimaryScreen: Bool— true pour placer une Location sur l'écran principal ; false pour utiliser l'écran où se trouve actuellement le pointeur de la souris. Ignoré pour un emplacement 'x,y'.titleAlign: Integer— Alignement de la ligne de titre : TextAlign.Left, TextAlign.Center ou TextAlign.Right. Toute autre valeur arrête l'action avec une erreur.messageAlign: Integer— Alignement de la ligne de message : TextAlign.Left, TextAlign.Center ou TextAlign.Right. Toute autre valeur arrête l'action avec une erreur.
Renvoie
Toujours true, y compris lorsque le message était déjà fermé (l'appel ne fait alors rien).
1 exemple: Un message affiché qui se met à jour en direct
Utility
UtilityGetTickCount
UtilityGetTickCount() → Integer
Renvoie le nombre de millisecondes écoulées depuis le démarrage de Windows. Soustrayez deux lectures pour mesurer un temps écoulé, par exemple pour détecter un double déclenchement. Ce n'est pas une horloge ; utilisez DateTimeGetNow pour l'heure du jour.
Paramètres
Aucun paramètre.
Renvoie
Les millisecondes écoulées depuis le démarrage de Windows, sous forme d'Integer.
UtilityLockAcquire
UtilityLockAcquire(name: Text, timeoutSeconds: Integer) → Integer
Prend un verrou nommé afin qu'une seule action à la fois exécute une section de script. Bloque le script jusqu'à ce que le verrou soit libre ou que timeoutSeconds soit écoulé. Le verrou est libéré automatiquement à la fin du script.
Paramètres
name: Text— Le nom du verrou, de 1 à 255 caractères, partagé par toutes les actions ; les majuscules et les minuscules sont équivalentes. Reprendre un verrou que ce script détient déjà est autorisé et nécessite un UtilityLockRelease supplémentaire.timeoutSeconds: Integer— Durée d'attente maximale, en secondes. 0, ou plus de 24 jours, attend que le verrou soit libre ou que l'action soit arrêtée. Une valeur négative arrête l'action avec une erreur.
Renvoie
LockResult.Acquired, LockResult.TimedOut (également lorsque l'action est arrêtée pendant l'attente), ou immédiatement LockResult.Pinned si le verrou est épinglé.
1 exemple: Ne laisser qu'une action à la fois exécuter une section
UtilityLockAcquirePinned
UtilityLockAcquirePinned(name: Text, timeoutSeconds: Integer) → Integer
Prend un verrou nommé et l'épingle, afin qu'il reste pris après la fin du script. Seul un UtilityLockRelease issu de cette même exécution du script, ou un rechargement de la configuration, le libère. Bloque comme UtilityLockAcquire.
Paramètres
name: Text— Le nom du verrou, de 1 à 255 caractères, partagé par toutes les actions ; les majuscules et les minuscules sont équivalentes. Un verrou que ce script détient déjà devient épinglé.timeoutSeconds: Integer— Durée d'attente maximale, en secondes. 0, ou plus de 24 jours, attend que le verrou soit libre ou que l'action soit arrêtée. Une valeur négative arrête l'action avec une erreur.
Renvoie
LockResult.Acquired, LockResult.TimedOut (également lorsque l'action est arrêtée pendant l'attente), ou immédiatement LockResult.Pinned si le verrou est déjà épinglé.
UtilityLockGetState
UtilityLockGetState(name: Text) → Integer
Indique si un verrou nommé est libre, détenu par ce script, détenu par une autre action ou épinglé. N'attend jamais.
Paramètres
name: Text— Le nom du verrou, de 1 à 255 caractères ; les majuscules et les minuscules sont équivalentes.
Renvoie
LockState.Free, LockState.HeldByMe, LockState.HeldByOther ou LockState.Pinned. Un verrou épinglé indique LockState.Pinned même au script qui l'a épinglé.
UtilityLockRelease
UtilityLockRelease(name: Text) → Bool
Libère un verrou nommé détenu par ce script, ou retire son épinglage. Un verrou pris plusieurs fois est libéré après le même nombre de libérations.
Paramètres
name: Text— Le nom du verrou, de 1 à 255 caractères ; les majuscules et les minuscules sont équivalentes.
Renvoie
true si ce script détenait le verrou ; false, sans rien faire, si personne ne le détient ou si une autre action le détient.
1 exemple: Ne laisser qu'une action à la fois exécuter une section
UtilityPrint
UtilityPrint(text: Text) → Bool
Écrit une ligne de texte dans la section Utilisateur de la console de diagnostic, ou dans la sortie de la section Script lorsque le script y est exécuté. Les lignes écrites pendant que la console est fermée apparaissent à sa prochaine ouverture.
Paramètres
text: Text— Le texte à écrire. Convertissez d'abord un nombre en Text avec StringFormat ou StringFromNumber.
Renvoie
Toujours true.
70 exemples: Bonjour, console, Les cinq types de valeurs, Valeur de vérité de chaque type, Chaîne else-if, Boucles de comptage : croissantes, décroissantes et par pas, Boucles imbriquées : une table de multiplication, Boucle while : attendre une fenêtre, avec un délai maximal, while (true) avec un indicateur de sortie, break et continue, Surprises de priorité, && et || évaluent les deux côtés, Égalité entre types différents, L'arithmétique entre types mélangés se replie sur 0, Commentaires, instructions vides et blocs, Division Integer ou Real, et division par zéro, Reste sans %, Arrondis et fonctions mathématiques sur les Real, Limiter une valeur à une plage, Nombres aléatoires et pile ou face, Longueur du tracé d'un geste, Mettre en forme un Real sans six décimales, Masques d'indicateurs : activer, désactiver, inverser, tester, Lire la couleur du pixel sous le curseur, Integer en texte hexadécimal, Compter les bits à 1, Cas limites des décalages, Échanger deux Integer, Bits d'état des touches, Séquences d'échappement et chemins Windows, Mettre en forme plus de deux valeurs, Découper et parcourir, Découpages imbriqués : paires clé=valeur, Dernier index de : une extension de fichier, Lire un nombre saisi par quelqu'un, Lancer un programme, attendre sa fenêtre, agir dessus, Extraire une valeur d'un texte copié avec une expression régulière, Compléter un nombre par des zéros, Inverser un Text, Compter les mots du Presse-papiers, Comparaisons insensibles à la casse, L'ordre du texte est ordinal, La date du jour, et un nom de fichier horodaté, Constantes nommées ou nombres bruts, Lister les fenêtres de niveau supérieur visibles, Réduire toutes les fenêtres d'une application, Inspecter les contrôles enfants d'une fenêtre, Du processus à la fenêtre, Décrire ce qui se trouve sous le curseur, Tout ce que sait le contexte de déclenchement, Dans quelle direction est allé le tracé ?, Brancher selon le bouton du tracé, Enregistrer une image copiée dans un fichier, Lire un fichier et compter ses lignes, Compter les types de fichiers d'un dossier, Surveiller un dossier, Un minuteur répétitif qui compte, Lister et arrêter des minuteurs, Un compteur qui survit à un redémarrage, Une liste conservée dans Storage, Ne laisser qu'une action à la fois exécuter une section, Poser une question, Développer des variables d'environnement, Passer la main à AutoHotkey, Lister les écrans, État du moteur, Des extraits comme fonctions réutilisables, Communiquer avec un plugin, Poser une question à un périphérique série, Lister les ports COM, Garder ouvert le port d'un Arduino et lui envoyer des commandes
UtilityWait
UtilityWait(milliseconds: Integer) → Bool · Simple
Met le script en pause pendant un nombre de millisecondes, par exemple pour laisser à une fenêtre ou au Presse-papiers le temps de suivre. L'attente se termine plus tôt si l'action est arrêtée.
Paramètres
milliseconds: Integer— Durée d'attente, en millisecondes, de 0 à 60000 (une minute). Les valeurs supérieures attendent une minute ; les valeurs négatives n'attendent pas.
Renvoie
Toujours true.
10 exemples: Boucle while : attendre une fenêtre, avec un délai maximal, Déplacer la souris en cercle, Remplir un modèle et le coller, Cliquer quelque part, puis remettre le curseur en place, Un glissement scripté, Confiner le curseur à une fenêtre pendant 5 secondes, Touches multimédias, Mettre en majuscules le texte sélectionné, Rechercher la sélection sur le web, Un message affiché qui se met à jour en direct
Window
WindowCenterToScreen
WindowCenterToScreen(window: Window) → Bool · Simple
Déplace une fenêtre pour la centrer dans la zone de travail (l'écran sans la barre des tâches) de l'écran où elle se trouve, en conservant sa taille.
Paramètres
window: Window— La fenêtre à centrer.
Renvoie
true si la fenêtre a été déplacée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
2 exemples: Boucle while : attendre une fenêtre, avec un délai maximal, Mémoriser et restaurer la position d'une fenêtre
WindowClipToScreen
WindowClipToScreen(window: Window) → Bool
Réduit et déplace une fenêtre juste assez pour qu'aucun bord ne dépasse de la zone de travail (l'écran sans la barre des tâches) de l'écran où elle se trouve. Une fenêtre entièrement hors de la zone de travail y est d'abord ramenée, à sa taille actuelle.
Paramètres
window: Window— La fenêtre à contenir dans la zone de travail.
Renvoie
true si la fenêtre a été placée, y compris lorsqu'elle se trouvait déjà dans la zone de travail ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification.
WindowClose
WindowClose(window: Window) → Bool · Simple
Demande à une fenêtre de se fermer, comme si l'utilisateur avait cliqué sur son bouton de fermeture. Le programme peut proposer d'enregistrer les modifications ou refuser ; utilisez WindowWaitClose pour attendre sa disparition.
Paramètres
window: Window— La fenêtre à fermer.
Renvoie
true si la demande de fermeture a été envoyée, ce qui ne signifie pas que la fenêtre est fermée ; false si la fenêtre est nulle ou fermée, ou si elle appartient à un programme exécuté avec des droits plus élevés, par exemple en tant qu'administrateur.
3 exemples: Fermer des fenêtres selon un motif de titre, après confirmation, Brancher selon le bouton du tracé, Changer de comportement tant que Ctrl est maintenue
WindowContainsTitle
WindowContainsTitle(window: Window, text: Text) → Bool
Vérifie si le titre d'une fenêtre contient un texte, sans tenir compte de la casse.
Paramètres
window: Window— La fenêtre dont le titre est à vérifier.text: Text— Le texte à rechercher n'importe où dans le titre. La casse est ignorée.
Renvoie
true si le titre contient text, et toujours true lorsque text est vide ; sinon false, y compris pour une fenêtre nulle ou fermée.
WindowControlFromPoint
WindowControlFromPoint(x: Integer, y: Integer) → Window
Renvoie la fenêtre la plus profonde située à un point de l'écran, par exemple un bouton, une zone de texte ou un autre contrôle à l'intérieur de la fenêtre d'un programme. Les fenêtres masquées et désactivées sont ignorées.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels de l'écran virtuel.y: Integer— Position verticale à l'écran, en pixels de l'écran virtuel.
Renvoie
Le contrôle ou la fenêtre sous le point, ou une fenêtre nulle s'il n'y en a aucun.
1 exemple: Décrire ce qui se trouve sous le curseur
WindowEnsureVisible
WindowEnsureVisible(window: Window) → Bool
Fait glisser une fenêtre entièrement dans la zone de travail de l'écran où elle se trouve, sans la redimensionner. Une fenêtre plus grande que la zone de travail est alignée sur le coin supérieur gauche de celle-ci.
Paramètres
window: Window— La fenêtre à ramener entièrement à l'écran.
Renvoie
true si la fenêtre a été placée, y compris lorsqu'elle était déjà entièrement visible ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
WindowFindAllByModuleRegex
WindowFindAllByModuleRegex(pattern: Text) → Integer
Recherche toutes les fenêtres de niveau supérieur, y compris masquées, dont le chemin du fichier programme correspond à une expression régulière, et conserve la liste pour WindowGetEnumeratedAt. Remplace toute liste de fenêtres antérieure.
Paramètres
pattern: Text— Une expression régulière comparée, sans tenir compte de la casse, au chemin complet du programme propriétaire de chaque fenêtre, par exemple 'notepad[.]exe$'.
Renvoie
Le nombre de fenêtres correspondantes, ou 0 si aucune ne correspond. Un modèle non valide arrête l'action avec une erreur.
1 exemple: Réduire toutes les fenêtres d'une application
WindowFindAllByTitleRegex
WindowFindAllByTitleRegex(pattern: Text) → Integer
Recherche toutes les fenêtres de niveau supérieur, y compris masquées, dont le titre correspond à une expression régulière, et conserve la liste pour WindowGetEnumeratedAt. Remplace toute liste de fenêtres antérieure.
Paramètres
pattern: Text— Une expression régulière comparée au titre de chaque fenêtre, sans tenir compte de la casse. Elle correspond n'importe où dans le titre, sauf si elle est ancrée avec ^ ou $.
Renvoie
Le nombre de fenêtres correspondantes, ou 0 si aucune ne correspond. Un modèle non valide arrête l'action avec une erreur.
1 exemple: Fermer des fenêtres selon un motif de titre, après confirmation
WindowFindByClassName
WindowFindByClassName(className: Text) → Window
Recherche la fenêtre de niveau supérieur visible la plus au premier plan dont le nom de classe contient le texte indiqué, sans tenir compte de la casse.
Paramètres
className: Text— Texte à rechercher dans le nom de classe, par exemple 'Notepad'. Une partie du nom suffit ; un texte vide correspond à la fenêtre visible la plus au premier plan.
Renvoie
La fenêtre trouvée, ou une fenêtre nulle si aucune fenêtre de niveau supérieur visible ne correspond.
WindowFindByTitle
WindowFindByTitle(title: Text) → Window
Recherche la fenêtre de niveau supérieur visible la plus au premier plan dont le titre contient le texte indiqué, sans tenir compte de la casse.
Paramètres
title: Text— Texte à rechercher n'importe où dans le titre. La casse est ignorée ; un texte vide correspond à la fenêtre visible la plus au premier plan.
Renvoie
La fenêtre trouvée, ou une fenêtre nulle si aucune fenêtre de niveau supérieur visible ne correspond.
4 exemples: Valeur de vérité de chaque type, Boucle while : attendre une fenêtre, avec un délai maximal, Égalité entre types différents, Cliquer sur un point dans une fenêtre
WindowFitToScreen
WindowFitToScreen(window: Window) → Bool · Simple
Redimensionne et déplace une fenêtre pour que ses bords visibles remplissent la zone de travail (l'écran sans la barre des tâches) de l'écran où elle se trouve, sans l'agrandir.
Paramètres
window: Window— La fenêtre à ajuster à la zone de travail.
Renvoie
true si la fenêtre a été redimensionnée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification.
WindowFromPoint
WindowFromPoint(x: Integer, y: Integer) → Window
Renvoie la fenêtre de niveau supérieur située à un point de l'écran, par exemple la fenêtre du programme sous la souris, plutôt que le contrôle qu'elle contient.
Paramètres
x: Integer— Position horizontale à l'écran, en pixels de l'écran virtuel.y: Integer— Position verticale à l'écran, en pixels de l'écran virtuel.
Renvoie
La fenêtre de niveau supérieur sous le point, ou une fenêtre nulle s'il n'y en a aucune.
WindowFromProcessId
WindowFromProcessId(processId: Integer) → Window
Renvoie la fenêtre principale d'un programme en cours d'exécution : la fenêtre de niveau supérieur visible la plus au premier plan appartenant à ce processus.
Paramètres
processId: Integer— L'ID de processus, tel que renvoyé par WindowGetProcessId ou ShellGetEnumeratedProcessIdAt.
Renvoie
La fenêtre, ou une fenêtre nulle si le processus n'a aucune fenêtre de niveau supérieur visible ou si processId vaut 0.
1 exemple: Du processus à la fenêtre
WindowGetActive
WindowGetActive() → Window
Renvoie la fenêtre au premier plan : la fenêtre de niveau supérieur dans laquelle l'utilisateur travaille actuellement.
Paramètres
Aucun paramètre.
Renvoie
La fenêtre active, ou une fenêtre nulle si aucune fenêtre n'est active à ce moment-là, par exemple pendant un changement de focus.
4 exemples: Les cinq types de valeurs, Mettre en forme plus de deux valeurs, Comparaisons insensibles à la casse, Ancrer la fenêtre active dans la moitié gauche de son écran
WindowGetAllChildren
WindowGetAllChildren(window: Window, directOnly: Bool) → Integer
Liste les fenêtres enfants (contrôles) d'une fenêtre et conserve la liste pour WindowGetEnumeratedAt. Remplace toute liste de fenêtres antérieure.
Paramètres
window: Window— La fenêtre dont les fenêtres enfants sont à lister.directOnly: Bool— true pour les seuls enfants directs de la fenêtre ; false pour tous les descendants à tous les niveaux.
Renvoie
Le nombre de fenêtres enfants trouvées, ou 0 s'il n'y en a aucune ou si la fenêtre est nulle.
1 exemple: Inspecter les contrôles enfants d'une fenêtre
WindowGetAllProps
WindowGetAllProps(window: Window) → Integer
Liste toutes les propriétés stockées sur une fenêtre, par ce moteur, par le programme lui-même ou par d'autres logiciels, et conserve la liste pour WindowGetEnumeratedPropNameAt et WindowGetEnumeratedPropValueAt.
Paramètres
window: Window— La fenêtre dont les propriétés sont à lister.
Renvoie
Le nombre de propriétés trouvées, ou 0 s'il n'y en a aucune ou si la fenêtre est nulle.
WindowGetAllTopLevel
WindowGetAllTopLevel() → Integer
Liste toutes les fenêtres de niveau supérieur du bureau, du premier plan à l'arrière-plan, y compris celles qui sont masquées ou occultées, et conserve la liste pour WindowGetEnumeratedAt. Remplace toute liste de fenêtres antérieure.
Paramètres
Aucun paramètre.
Renvoie
Le nombre de fenêtres de niveau supérieur trouvées.
1 exemple: Lister les fenêtres de niveau supérieur visibles
WindowGetAlpha
WindowGetAlpha(window: Window) → Integer
Renvoie le niveau de transparence d'une fenêtre, tel que défini par WindowSetAlpha ou par le programme lui-même.
Paramètres
window: Window— La fenêtre à lire.
Renvoie
Une valeur de 0 (entièrement transparente) à 255 (entièrement opaque). 255 pour une fenêtre sans transparence définie, ainsi que pour une fenêtre nulle ou fermée.
1 exemple: Faire varier la transparence d'une fenêtre
WindowGetClassName
WindowGetClassName(window: Window) → Text
Renvoie le nom de classe d'une fenêtre, le nom de type que Windows utilise pour elle, par exemple 'Notepad' ou 'Button'. Utile pour reconnaître des fenêtres dont le titre change.
Paramètres
window: Window— La fenêtre à lire.
Renvoie
Le nom de classe, ou un texte vide si la fenêtre est nulle ou fermée.
2 exemples: Inspecter les contrôles enfants d'une fenêtre, Décrire ce qui se trouve sous le curseur
WindowGetControlText
WindowGetControlText(window: Window) → Text
Lit le texte d'un contrôle dans n'importe quel programme, par exemple une zone de texte, une barre d'état ou le message d'une boîte de dialogue. Fonctionne uniquement avec les contrôles Windows classiques. Bloque le script jusqu'à 2 secondes si le programme ne répond pas.
Paramètres
window: Window— Le contrôle ou la fenêtre à lire, issu par exemple de WindowControlFromPoint ou de WindowGetEnumeratedAt.
Renvoie
Le texte du contrôle, jusqu'à environ un million de caractères, ou un texte vide s'il n'en a pas, si la fenêtre est nulle ou fermée, ou si le programme n'a pas répondu. La zone de mot de passe d'un autre programme donne un texte vide.
WindowGetDpi
WindowGetDpi(window: Window) → Integer
Renvoie la valeur DPI de l'écran où se trouve une fenêtre : 96 pour une mise à l'échelle de l'affichage de 100 pour cent, 144 pour 150 pour cent.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
La valeur DPI, ou 0 si la fenêtre est nulle ou fermée.
WindowGetEnabled
WindowGetEnabled(window: Window) → Bool
Vérifie si une fenêtre accepte les entrées de la souris et du clavier. Une fenêtre ou un contrôle désactivé est généralement affiché en grisé.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
true si la fenêtre est activée ; false si elle est désactivée, nulle ou fermée.
WindowGetEnumeratedAt
WindowGetEnumeratedAt(index: Integer) → Window
Renvoie une fenêtre de la liste établie par l'appel le plus récent à WindowGetAllTopLevel, WindowGetAllChildren, WindowFindAllByTitleRegex ou WindowFindAllByModuleRegex.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre renvoyé par l'appel de listage moins 1.
Renvoie
La fenêtre à cette position, ou une fenêtre nulle si index est hors limites.
4 exemples: Lister les fenêtres de niveau supérieur visibles, Réduire toutes les fenêtres d'une application, Fermer des fenêtres selon un motif de titre, après confirmation, Inspecter les contrôles enfants d'une fenêtre
WindowGetEnumeratedPropNameAt
WindowGetEnumeratedPropNameAt(index: Integer) → Text
Renvoie le nom d'une propriété de la liste établie par l'appel le plus récent à WindowGetAllProps.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre renvoyé par WindowGetAllProps moins 1.
Renvoie
Le nom de la propriété, ou un texte vide si index est hors limites.
WindowGetEnumeratedPropValueAt
WindowGetEnumeratedPropValueAt(index: Integer) → Integer
Renvoie la valeur entière brute d'une propriété de la liste établie par l'appel le plus récent à WindowGetAllProps. Une propriété définie avec WindowSetPropertyText affiche ici un nombre interne, et non son texte.
Paramètres
index: Integer— Position dans la liste, de 0 au nombre renvoyé par WindowGetAllProps moins 1.
Renvoie
La valeur de la propriété, ou 0 si index est hors limites.
WindowGetExecutableFolder
WindowGetExecutableFolder(window: Window) → Text
Renvoie le dossier qui contient le programme propriétaire d'une fenêtre, sans le nom de fichier et sans séparateur final. Utilisez WindowGetExecutableName pour le nom de fichier, ou WindowGetExecutableFullPath pour les deux.
Paramètres
window: Window— La fenêtre dont le programme est à localiser.
Renvoie
Le chemin du dossier, ou un texte vide si la fenêtre est nulle ou fermée ou si le programme ne peut pas être interrogé.
WindowGetExecutableFullPath
WindowGetExecutableFullPath(window: Window) → Text
Renvoie le chemin complet du programme propriétaire d'une fenêtre, dossier et nom de fichier ensemble, par exemple le chemin de notepad.exe dans le dossier Windows. Utilisez WindowGetExecutableFolder ou WindowGetExecutableName pour une seule partie.
Paramètres
window: Window— La fenêtre dont le programme est à localiser.
Renvoie
Le chemin complet, ou un texte vide si la fenêtre est nulle ou fermée ou si le programme ne peut pas être interrogé.
WindowGetExecutableName
WindowGetExecutableName(window: Window) → Text
Renvoie le nom de fichier du programme propriétaire d'une fenêtre, par exemple 'notepad.exe'.
Paramètres
window: Window— La fenêtre dont le programme est à identifier.
Renvoie
Le nom de fichier du programme, ou un texte vide si la fenêtre est nulle ou fermée ou si le programme ne peut pas être interrogé.
2 exemples: Comparaisons insensibles à la casse, Lister les fenêtres de niveau supérieur visibles
WindowGetHeight
WindowGetHeight(window: Window) → Integer
Renvoie la hauteur visible d'une fenêtre, sans la bordure de redimensionnement invisible que Windows ajoute autour de la plupart des fenêtres.
Paramètres
window: Window— La fenêtre à mesurer.
Renvoie
La hauteur en pixels, ou 0 si la fenêtre est nulle ou fermée.
3 exemples: Mettre en forme plus de deux valeurs, Ancrer la fenêtre active dans la moitié gauche de son écran, Confiner le curseur à une fenêtre pendant 5 secondes
WindowGetLastFocus
WindowGetLastFocus() → Window
Renvoie la fenêtre ou le contrôle qui a reçu le plus récemment le focus clavier, n'importe où sur le bureau. Il s'agit souvent d'un contrôle tel qu'une zone de texte plutôt que de sa fenêtre de niveau supérieur.
Paramètres
Aucun paramètre.
Renvoie
La dernière fenêtre ou le dernier contrôle ayant eu le focus, ou une fenêtre nulle si le focus n'a pas changé depuis le démarrage du moteur.
WindowGetMovableAncestor
WindowGetMovableAncestor(window: Window) → Window
Renvoie la fenêtre la plus proche qui peut être déplacée par glissement : la fenêtre elle-même ou le premier parent au-dessus d'elle qui possède un menu système. Transforme un contrôle situé sous la souris en fenêtre à déplacer.
Paramètres
window: Window— La fenêtre ou le contrôle de départ.
Renvoie
La fenêtre elle-même ou le premier parent doté d'un menu système, ou une fenêtre nulle si aucun n'en possède ou si la fenêtre est nulle.
WindowGetParent
WindowGetParent(window: Window) → Window
Renvoie la fenêtre qui contient un contrôle. Pour une fenêtre contextuelle telle qu'une boîte de dialogue, il peut s'agir de la fenêtre qui la possède.
Paramètres
window: Window— La fenêtre ou le contrôle dont le parent est à obtenir.
Renvoie
La fenêtre parente ou propriétaire, ou une fenêtre nulle s'il n'y en a aucune ou si la fenêtre est nulle ou fermée.
WindowGetProcessId
WindowGetProcessId(window: Window) → Integer
Renvoie l'ID du processus (le programme en cours d'exécution) propriétaire d'une fenêtre, le même nombre que celui affiché par le Gestionnaire des tâches.
Paramètres
window: Window— La fenêtre dont le processus est à identifier.
Renvoie
L'ID de processus, ou 0 si la fenêtre est nulle ou fermée.
WindowGetPropertyInteger
WindowGetPropertyInteger(window: Window, name: Text) → Integer
Lit un entier nommé stocké sur une fenêtre, par exemple un entier stocké auparavant avec WindowSetPropertyInteger pour mémoriser une information sur cette fenêtre.
Paramètres
window: Window— La fenêtre à lire.name: Text— Le nom de la propriété.
Renvoie
La valeur stockée, ou 0 si la propriété n'existe pas ou si la fenêtre est nulle. Un 0 stocké est impossible à distinguer d'une propriété absente.
2 exemples: Épingler une fenêtre au premier plan, Mémoriser et restaurer la position d'une fenêtre
WindowGetPropertyText
WindowGetPropertyText(window: Window, name: Text) → Text
Lit une valeur texte nommée que ce moteur a stockée sur une fenêtre avec WindowSetPropertyText.
Paramètres
window: Window— La fenêtre à lire.name: Text— Le nom de la propriété.
Renvoie
Le texte stocké, ou un texte vide si la propriété n'existe pas, n'a pas été stockée sous forme de texte par ce moteur, a été écrasée depuis, ou si la fenêtre est nulle.
WindowGetRoot
WindowGetRoot(window: Window) → Window
Renvoie la fenêtre de niveau supérieur qui contient une fenêtre ou un contrôle, par exemple la fenêtre du programme autour d'un bouton.
Paramètres
window: Window— La fenêtre ou le contrôle de départ.
Renvoie
La fenêtre de niveau supérieur, c'est-à-dire la fenêtre elle-même si elle est déjà de niveau supérieur ; une fenêtre nulle si la fenêtre est nulle ou fermée.
1 exemple: Décrire ce qui se trouve sous le curseur
WindowGetTitle
WindowGetTitle(window: Window) → Text
Renvoie le texte de la barre de titre d'une fenêtre. Pour les contrôles d'autres programmes, il est généralement vide ; utilisez WindowGetControlText pour ceux-ci.
Paramètres
window: Window— La fenêtre à lire.
Renvoie
Le titre, ou un texte vide si la fenêtre n'en a pas ou si elle est nulle ou fermée.
9 exemples: Comparaisons insensibles à la casse, Un geste, plusieurs choix, Épingler une fenêtre au premier plan, Lister les fenêtres de niveau supérieur visibles, Inspecter les contrôles enfants d'une fenêtre, Du processus à la fenêtre, Décrire ce qui se trouve sous le curseur, Tout ce que sait le contexte de déclenchement, Une liste conservée dans Storage
WindowGetVisible
WindowGetVisible(window: Window) → Bool
Vérifie si une fenêtre est configurée pour être affichée. Une fenêtre visible peut tout de même être réduite, recouverte par d'autres fenêtres, hors de l'écran ou sur un autre bureau virtuel.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
true si la fenêtre et tous ses parents sont affichés ; false si elle est masquée, nulle ou fermée.
1 exemple: Lister les fenêtres de niveau supérieur visibles
WindowGetWidth
WindowGetWidth(window: Window) → Integer
Renvoie la largeur visible d'une fenêtre, sans la bordure de redimensionnement invisible que Windows ajoute autour de la plupart des fenêtres.
Paramètres
window: Window— La fenêtre à mesurer.
Renvoie
La largeur en pixels, ou 0 si la fenêtre est nulle ou fermée.
3 exemples: Mettre en forme plus de deux valeurs, Ancrer la fenêtre active dans la moitié gauche de son écran, Confiner le curseur à une fenêtre pendant 5 secondes
WindowGetX
WindowGetX(window: Window) → Integer
Renvoie la position à l'écran du bord gauche visible d'une fenêtre, sans la bordure de redimensionnement invisible. Pour une fenêtre réduite, il s'agit d'une position de stationnement hors de l'écran.
Paramètres
window: Window— La fenêtre à localiser.
Renvoie
Le bord gauche, en pixels de l'écran virtuel, ou 0 si la fenêtre est nulle ou fermée.
4 exemples: Mettre en forme plus de deux valeurs, Ancrer la fenêtre active dans la moitié gauche de son écran, Mémoriser et restaurer la position d'une fenêtre, Confiner le curseur à une fenêtre pendant 5 secondes
WindowGetY
WindowGetY(window: Window) → Integer
Renvoie la position à l'écran du bord supérieur visible d'une fenêtre, sans la bordure de redimensionnement invisible. Pour une fenêtre réduite, il s'agit d'une position de stationnement hors de l'écran.
Paramètres
window: Window— La fenêtre à localiser.
Renvoie
Le bord supérieur, en pixels de l'écran virtuel, ou 0 si la fenêtre est nulle ou fermée.
4 exemples: Mettre en forme plus de deux valeurs, Ancrer la fenêtre active dans la moitié gauche de son écran, Mémoriser et restaurer la position d'une fenêtre, Confiner le curseur à une fenêtre pendant 5 secondes
WindowHide
WindowHide(window: Window) → Bool
Masque complètement une fenêtre, bouton de la barre des tâches compris. Le moteur l'affiche de nouveau lorsqu'il se ferme, et la commande Afficher les fenêtres masquées du menu de la zone de notification la fait réapparaître à tout moment.
Paramètres
window: Window— La fenêtre à masquer.
Renvoie
true si la fenêtre a été masquée ou l'était déjà ; false si elle est nulle ou fermée, s'il s'agit du bureau, de la barre des tâches ou de l'une des fenêtres de ce moteur, ou si 256 fenêtres masquées sont déjà suivies.
WindowIsCloaked
WindowIsCloaked(window: Window) → Bool
Vérifie si Windows tient une fenêtre hors de vue bien qu'elle soit considérée comme affichée, par exemple une fenêtre située sur un autre bureau virtuel ou une application du Store suspendue. Utile pour ignorer ces fenêtres dans une liste.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
true si la fenêtre est occultée ; false si elle ne l'est pas, ou si la fenêtre est nulle ou fermée.
1 exemple: Lister les fenêtres de niveau supérieur visibles
WindowIsMaximized
WindowIsMaximized(window: Window) → Bool
Vérifie si une fenêtre est agrandie, par exemple avant de décider d'appeler WindowRestore ou WindowMaximize.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
true si la fenêtre est agrandie ; false si elle ne l'est pas, ou si la fenêtre est nulle ou fermée.
1 exemple: Basculer l'agrandissement de la fenêtre du geste
WindowIsMinimized
WindowIsMinimized(window: Window) → Bool
Vérifie si une fenêtre est réduite dans la barre des tâches, par exemple avant de décider d'appeler WindowRestore.
Paramètres
window: Window— La fenêtre à vérifier.
Renvoie
true si la fenêtre est réduite ; false si elle ne l'est pas, ou si la fenêtre est nulle ou fermée.
WindowMapClientPointToScreenX
WindowMapClientPointToScreenX(window: Window, x: Integer, y: Integer) → Integer
Convertit un point de la zone cliente d'une fenêtre (l'intérieur de la fenêtre, sous la barre de titre et à l'intérieur des bordures) en position à l'écran et renvoie sa composante horizontale.
Paramètres
window: Window— La fenêtre dont la zone cliente contient le point.x: Integer— Position horizontale depuis le bord gauche de la zone cliente, en pixels.y: Integer— Position verticale depuis le bord supérieur de la zone cliente, en pixels.
Renvoie
La position X à l'écran, en pixels de l'écran virtuel, ou 0 si la fenêtre est nulle ou fermée.
WindowMapClientPointToScreenY
WindowMapClientPointToScreenY(window: Window, x: Integer, y: Integer) → Integer
Convertit un point de la zone cliente d'une fenêtre (l'intérieur de la fenêtre, sous la barre de titre et à l'intérieur des bordures) en position à l'écran et renvoie sa composante verticale.
Paramètres
window: Window— La fenêtre dont la zone cliente contient le point.x: Integer— Position horizontale depuis le bord gauche de la zone cliente, en pixels.y: Integer— Position verticale depuis le bord supérieur de la zone cliente, en pixels.
Renvoie
La position Y à l'écran, en pixels de l'écran virtuel, ou 0 si la fenêtre est nulle ou fermée.
WindowMapScreenPointToClientX
WindowMapScreenPointToClientX(window: Window, x: Integer, y: Integer) → Integer
Convertit une position à l'écran en point relatif à la zone cliente d'une fenêtre (l'intérieur de la fenêtre, sous la barre de titre et à l'intérieur des bordures) et renvoie sa composante horizontale.
Paramètres
window: Window— La fenêtre dont la zone cliente sert de référence.x: Integer— Position horizontale à l'écran, en pixels de l'écran virtuel.y: Integer— Position verticale à l'écran, en pixels de l'écran virtuel.
Renvoie
La position X depuis le bord gauche de la zone cliente, en pixels ; négative si le point est à sa gauche. 0 si la fenêtre est nulle ou fermée.
1 exemple: Décrire ce qui se trouve sous le curseur
WindowMapScreenPointToClientY
WindowMapScreenPointToClientY(window: Window, x: Integer, y: Integer) → Integer
Convertit une position à l'écran en point relatif à la zone cliente d'une fenêtre (l'intérieur de la fenêtre, sous la barre de titre et à l'intérieur des bordures) et renvoie sa composante verticale.
Paramètres
window: Window— La fenêtre dont la zone cliente sert de référence.x: Integer— Position horizontale à l'écran, en pixels de l'écran virtuel.y: Integer— Position verticale à l'écran, en pixels de l'écran virtuel.
Renvoie
La position Y depuis le bord supérieur de la zone cliente, en pixels ; négative si le point est au-dessus. 0 si la fenêtre est nulle ou fermée.
1 exemple: Décrire ce qui se trouve sous le curseur
WindowMaximize
WindowMaximize(window: Window) → Bool · Simple
Agrandit une fenêtre pour qu'elle remplisse l'écran où elle se trouve, et l'active. Une fenêtre masquée avec WindowHide est affichée et n'est plus suivie comme masquée.
Paramètres
window: Window— La fenêtre à agrandir.
Renvoie
true si la fenêtre est agrandie après l'appel ; false si la fenêtre est nulle ou fermée, ou si elle ne s'est pas agrandie.
2 exemples: Un geste, plusieurs choix, Basculer l'agrandissement de la fenêtre du geste
WindowMinimize
WindowMinimize(window: Window) → Bool · Simple
Réduit une fenêtre dans la barre des tâches. Windows active ensuite la fenêtre suivante. Une fenêtre masquée avec WindowHide est affichée réduite et n'est plus suivie comme masquée.
Paramètres
window: Window— La fenêtre à réduire.
Renvoie
true si la fenêtre est réduite après l'appel ; false si la fenêtre est nulle ou fermée, ou si elle ne s'est pas réduite.
4 exemples: Un geste, plusieurs choix, Réduire toutes les fenêtres d'une application, Brancher selon le bouton du tracé, Changer de comportement tant que Ctrl est maintenue
WindowMoveTo
WindowMoveTo(window: Window, x: Integer, y: Integer) → Bool
Déplace une fenêtre pour que son coin supérieur gauche visible se trouve à une position de l'écran, en conservant sa taille. Utilise les mêmes coordonnées que WindowGetX et WindowGetY ; une fenêtre agrandie n'est pas restaurée au préalable.
Paramètres
window: Window— La fenêtre à déplacer.x: Integer— Nouveau bord gauche du cadre visible, en pixels de l'écran virtuel.y: Integer— Nouveau bord supérieur du cadre visible, en pixels de l'écran virtuel.
Renvoie
true si la fenêtre a été déplacée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
3 exemples: Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur, Mémoriser et restaurer la position d'une fenêtre
WindowRemoveProp
WindowRemoveProp(window: Window, name: Text) → Integer
Supprime une propriété nommée d'une fenêtre, qu'elle ait été stockée avec WindowSetPropertyInteger, avec WindowSetPropertyText ou par un autre logiciel.
Paramètres
window: Window— La fenêtre dont la propriété est à supprimer.name: Text— Le nom de la propriété.
Renvoie
La valeur brute de la propriété supprimée, ou 0 si elle n'existait pas ou si la fenêtre est nulle. Pour une propriété texte, il s'agit d'un nombre interne, et non du texte.
2 exemples: Épingler une fenêtre au premier plan, Mémoriser et restaurer la position d'une fenêtre
WindowResizeTo
WindowResizeTo(window: Window, width: Integer, height: Integer) → Bool
Redimensionne le cadre visible d'une fenêtre en gardant son coin supérieur gauche en place. Utilise la même taille que WindowGetWidth et WindowGetHeight ; une fenêtre agrandie n'est pas restaurée au préalable.
Paramètres
window: Window— La fenêtre à redimensionner.width: Integer— Nouvelle largeur visible, en pixels.height: Integer— Nouvelle hauteur visible, en pixels.
Renvoie
true si la fenêtre a été redimensionnée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification.
2 exemples: Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
WindowRestore
WindowRestore(window: Window) → Bool · Simple
Ramène une fenêtre réduite ou agrandie à sa taille et à sa position normales, et l'active. Une fenêtre masquée avec WindowHide est affichée et n'est plus suivie comme masquée.
Paramètres
window: Window— La fenêtre à restaurer.
Renvoie
true si la fenêtre se retrouve à sa taille normale, ni réduite ni agrandie ; false si la fenêtre est nulle ou fermée, ou si elle n'y est pas parvenue. Une fenêtre réduite qui était agrandie auparavant redevient agrandie, ce qui compte comme false.
3 exemples: Basculer l'agrandissement de la fenêtre du geste, Ancrer la fenêtre active dans la moitié gauche de son écran, Ancrer une fenêtre dans une cellule d'une grille 3×2 sous le curseur
WindowSendToBottom
WindowSendToBottom(window: Window) → Bool · Simple
Place une fenêtre derrière toutes les autres fenêtres sans l'activer. Une fenêtre qui était toujours au premier plan perd ce réglage.
Paramètres
window: Window— La fenêtre à placer à l'arrière-plan.
Renvoie
true si la fenêtre a été placée à l'arrière-plan ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification.
WindowSendToMonitorAt
WindowSendToMonitorAt(window: Window, x: Integer, y: Integer, mouseFollows: Bool) → Bool
Déplace une fenêtre vers l'écran qui contient un point de l'écran, en conservant sa taille et sa position relative à la zone de travail. Une fenêtre agrandie se retrouve agrandie sur le nouvel écran ; si cela l'active, la fenêtre qui était active auparavant récupère le focus lorsque Windows le permet.
Paramètres
window: Window— La fenêtre à déplacer.x: Integer— Position horizontale d'un point quelconque de l'écran cible, en pixels de l'écran virtuel. Un point situé hors de tous les écrans choisit l'écran le plus proche.y: Integer— Position verticale d'un point quelconque de l'écran cible, en pixels de l'écran virtuel.mouseFollows: Bool— true pour déplacer le pointeur de la souris au même emplacement relatif sur le nouvel écran lorsque la fenêtre est déplacée ; false pour le laisser où il est.
Renvoie
true si la fenêtre a été déplacée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
WindowSendToMonitorIndex
WindowSendToMonitorIndex(window: Window, index: Integer, mouseFollows: Bool) → Bool
Déplace une fenêtre vers un écran choisi par sa position dans la liste issue de l'appel le plus récent à DisplayMonitorEnumeratedAll, en conservant sa taille et sa position relative. Une fenêtre agrandie reste agrandie ; si l'agrandir à nouveau l'active, la fenêtre qui était active auparavant récupère le focus lorsque Windows le permet.
Paramètres
window: Window— La fenêtre à déplacer.index: Integer— Position dans la liste des écrans, à partir de 0. Les écrans sont classés de gauche à droite, puis de haut en bas.mouseFollows: Bool— true pour déplacer le pointeur de la souris au même emplacement relatif sur le nouvel écran lorsque la fenêtre est déplacée ; false pour le laisser où il est.
Renvoie
true si la fenêtre a été déplacée ; false si la fenêtre est nulle ou fermée, si index est hors limites ou si DisplayMonitorEnumeratedAll n'a pas été exécutée dans ce script, ou si la fenêtre a refusé d'être déplacée.
1 exemple: Envoyer une fenêtre sur un écran précis
WindowSendToMonitorName
WindowSendToMonitorName(window: Window, name: Text, mouseFollows: Bool) → Bool
Déplace une fenêtre vers l'écran portant un chemin de périphérique ou un nom convivial donné, en conservant sa taille et sa position relative. Une fenêtre agrandie reste agrandie ; si l'agrandir à nouveau l'active, la fenêtre qui était active auparavant récupère le focus lorsque Windows le permet. Utile pour des dispositions qui survivent à l'ancrage et au désancrage d'un ordinateur portable.
Paramètres
window: Window— La fenêtre à déplacer.name: Text— Le chemin de périphérique ou le nom convivial de l'écran, tel que renvoyé par DisplayMonitorGetDevicePathFromPoint ou DisplayMonitorGetFriendlyNameFromPoint. Le chemin de périphérique est le choix fiable. La casse est ignorée.mouseFollows: Bool— true pour déplacer le pointeur de la souris au même emplacement relatif sur le nouvel écran lorsque la fenêtre est déplacée ; false pour le laisser où il est.
Renvoie
true si la fenêtre a été déplacée ; false si aucun écran connecté ne porte ce nom, si la fenêtre est nulle ou fermée, ou si la fenêtre a refusé d'être déplacée.
WindowSendToNextScreen
WindowSendToNextScreen(window: Window, mouseFollows: Bool) → Bool · Simple
Déplace une fenêtre vers l'écran suivant, de gauche à droite puis de haut en bas, en revenant du dernier au premier, en conservant sa taille et sa position relative. Une fenêtre agrandie reste agrandie ; si l'agrandir à nouveau l'active, la fenêtre qui était active auparavant récupère le focus lorsque Windows le permet.
Paramètres
window: Window— La fenêtre à déplacer.mouseFollows: Bool— true pour déplacer le pointeur de la souris au même emplacement relatif sur le nouvel écran lorsque la fenêtre est déplacée ; false pour le laisser où il est.
Renvoie
true si la fenêtre a été déplacée, y compris lorsqu'il n'y a qu'un seul écran ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
2 exemples: Envoyer une fenêtre sur l'écran suivant, Envoyer une fenêtre sur un écran précis
WindowSendToPreviousScreen
WindowSendToPreviousScreen(window: Window, mouseFollows: Bool) → Bool · Simple
Déplace une fenêtre vers l'écran précédent, de droite à gauche puis de bas en haut, en revenant du premier au dernier, en conservant sa taille et sa position relative. Une fenêtre agrandie reste agrandie ; si l'agrandir à nouveau l'active, la fenêtre qui était active auparavant récupère le focus lorsque Windows le permet.
Paramètres
window: Window— La fenêtre à déplacer.mouseFollows: Bool— true pour déplacer le pointeur de la souris au même emplacement relatif sur le nouvel écran lorsque la fenêtre est déplacée ; false pour le laisser où il est.
Renvoie
true si la fenêtre a été déplacée, y compris lorsqu'il n'y a qu'un seul écran ; false si la fenêtre est nulle ou fermée, ou si elle a refusé d'être déplacée.
WindowSetActive
WindowSetActive(window: Window) → Bool
Amène une fenêtre au premier plan et lui donne le focus clavier, en la restaurant d'abord si elle est réduite et en l'affichant si elle est masquée. Une fenêtre masquée avec WindowHide n'est plus suivie comme masquée. Windows peut refuser et faire clignoter son bouton dans la barre des tâches à la place.
Paramètres
window: Window— La fenêtre à activer.
Renvoie
true si la fenêtre est devenue la fenêtre au premier plan ; false si Windows a refusé, ou si la fenêtre est nulle ou fermée.
2 exemples: Lancer un programme, attendre sa fenêtre, agir dessus, Cliquer sur un point dans une fenêtre
WindowSetAlpha
WindowSetAlpha(window: Window, alpha: Integer) → Bool
Définit le degré de transparence d'une fenêtre, d'entièrement transparente à entièrement opaque. À 255, la fenêtre cesse d'être une fenêtre superposée, ce qui supprime aussi toute transparence définie par le programme lui-même. Les fenêtres des programmes exécutés en tant qu'administrateur ne peuvent pas être modifiées, sauf si le moteur l'est aussi.
Paramètres
window: Window— La fenêtre à modifier.alpha: Integer— Opacité de 0 (entièrement transparente) à 255 (entièrement opaque). Les valeurs hors de cette plage sont ramenées dans celle-ci.
Renvoie
true si la transparence a été appliquée ; false si la fenêtre est nulle ou fermée, ou si la modification a été refusée.
1 exemple: Faire varier la transparence d'une fenêtre
WindowSetBounds
WindowSetBounds(window: Window, x: Integer, y: Integer, width: Integer, height: Integer) → Bool
Déplace et redimensionne une fenêtre en une seule étape, avec les mêmes coordonnées de cadre visible que WindowGetX, WindowGetY, WindowGetWidth et WindowGetHeight. Évite le scintillement de WindowMoveTo suivi de WindowResizeTo.
Paramètres
window: Window— La fenêtre à déplacer et redimensionner.x: Integer— Nouveau bord gauche du cadre visible, en pixels de l'écran virtuel.y: Integer— Nouveau bord supérieur du cadre visible, en pixels de l'écran virtuel.width: Integer— Nouvelle largeur visible, en pixels.height: Integer— Nouvelle hauteur visible, en pixels.
Renvoie
true si la modification a été appliquée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification.
WindowSetEnabled
WindowSetEnabled(window: Window, enabled: Bool) → Bool
Active ou désactive une fenêtre ou un contrôle. Une fenêtre désactivée ignore les clics de souris et les frappes de touches jusqu'à ce qu'elle soit de nouveau activée.
Paramètres
window: Window— La fenêtre ou le contrôle à modifier.enabled: Bool— true pour activer la fenêtre ; false pour la désactiver.
Renvoie
true dès que la demande est effectuée ; false si la fenêtre est nulle ou fermée.
WindowSetPropertyInteger
WindowSetPropertyInteger(window: Window, name: Text, value: Integer) → Bool
Stocke un entier nommé sur une fenêtre, par exemple pour mémoriser une information sur cette fenêtre d'une action à l'autre. Le moteur supprime les propriétés qu'il a stockées lorsqu'il se ferme.
Paramètres
window: Window— La fenêtre sur laquelle stocker la valeur.name: Text— Le nom de la propriété. Choisissez un nom distinctif afin qu'il n'entre pas en conflit avec les propriétés que le programme utilise lui-même.value: Integer— L'entier à stocker.
Renvoie
true si la valeur a été stockée ; false si la fenêtre est nulle ou fermée.
2 exemples: Épingler une fenêtre au premier plan, Mémoriser et restaurer la position d'une fenêtre
WindowSetPropertyText
WindowSetPropertyText(window: Window, name: Text, value: Text) → Bool
Stocke une valeur texte nommée sur une fenêtre, relue avec WindowGetPropertyText. Le moteur conserve le texte exactement tel qu'il est fourni, casse comprise, et il peut être vide. Le moteur supprime les propriétés qu'il a stockées lorsqu'il se ferme.
Paramètres
window: Window— La fenêtre sur laquelle stocker le texte.name: Text— Le nom de la propriété. Choisissez un nom distinctif afin qu'il n'entre pas en conflit avec les propriétés que le programme utilise lui-même.value: Text— Le texte à stocker, 1 024 caractères au maximum.
Renvoie
true si le texte a été stocké ; false si la fenêtre est nulle ou fermée, si 512 valeurs texte sont déjà stockées, ou si la propriété n'a pas pu être définie. Un texte de plus de 1 024 caractères arrête l'action avec une erreur.
WindowSetTitle
WindowSetTitle(window: Window, title: Text) → Bool
Modifie le texte de la barre de titre d'une fenêtre. Le programme peut le rétablir à tout moment. Un programme qui ne répond pas dans un délai de 1 seconde n'est pas modifié.
Paramètres
window: Window— La fenêtre à renommer.title: Text— Le texte du nouveau titre.
Renvoie
true si le titre a été défini ; false si la fenêtre est nulle ou fermée, n'a pas répondu dans un délai de 1 seconde, ou si le programme a refusé.
1 exemple: Un geste, plusieurs choix
WindowSetTopmost
WindowSetTopmost(window: Window, topmost: Bool) → Bool · Simple
Maintient une fenêtre au-dessus de toutes les fenêtres normales, ou la ramène à l'empilement normal, sans l'activer.
Paramètres
window: Window— La fenêtre à modifier.topmost: Bool— true pour maintenir la fenêtre toujours au premier plan ; false pour la ramener à l'empilement normal.
Renvoie
true si la modification a été appliquée ; false si la fenêtre est nulle ou fermée, ou si elle appartient à un programme exécuté avec des droits plus élevés.
1 exemple: Épingler une fenêtre au premier plan
WindowShow
WindowShow(window: Window) → Bool
Affiche de nouveau une fenêtre masquée, par exemple masquée avec WindowHide, avec sa taille et sa position actuelles. Le moteur cesse de la suivre comme masquée.
Paramètres
window: Window— La fenêtre à afficher.
Renvoie
true si la demande d'affichage a été effectuée ; false si la fenêtre est nulle ou fermée.
WindowToggleTopmost
WindowToggleTopmost(window: Window) → Bool · Simple
Fait basculer une fenêtre entre toujours au premier plan et l'empilement normal, sans l'activer.
Paramètres
window: Window— La fenêtre à modifier.
Renvoie
true si la modification a été appliquée ; false si la fenêtre est nulle ou fermée, ou si elle a refusé la modification. N'indique pas dans quel état se trouve désormais la fenêtre.
WindowWaitClose
WindowWaitClose(window: Window, timeoutMs: Integer) → Bool
Attend qu'une fenêtre se ferme, en vérifiant toutes les 50 millisecondes. Bloque le script pendant au plus timeoutMs ; l'arrêt de toutes les actions met fin à l'attente plus tôt.
Paramètres
window: Window— La fenêtre à attendre.timeoutMs: Integer— Durée d'attente maximale, en millisecondes, de 0 à 60000. Les valeurs supérieures comptent comme 60000 ; 0 vérifie une fois sans attendre.
Renvoie
true dès que la fenêtre est fermée, immédiatement si elle est déjà fermée ou nulle ; false si elle est toujours ouverte à l'expiration du délai ou si l'attente est arrêtée.
1 exemple: Lancer un programme, attendre sa fenêtre, agir dessus
WindowWaitFor
WindowWaitFor(pattern: Text, timeoutMs: Integer) → Window
Attend qu'une fenêtre de niveau supérieur visible dont le titre correspond à une expression régulière apparaisse, en vérifiant toutes les 50 millisecondes. Bloque le script pendant au plus timeoutMs ; utile juste après le démarrage d'un programme.
Paramètres
pattern: Text— Une expression régulière comparée aux titres des fenêtres, sans tenir compte de la casse, par exemple 'Notepad$'. Elle correspond n'importe où dans le titre, sauf si elle est ancrée avec ^ ou $.timeoutMs: Integer— Durée d'attente maximale, en millisecondes, de 0 à 60000. Les valeurs supérieures comptent comme 60000 ; 0 vérifie une fois sans attendre.
Renvoie
La fenêtre correspondante la plus au premier plan, ou une fenêtre nulle si aucune n'est apparue à temps ou si l'attente a été arrêtée. Un modèle non valide arrête l'action avec une erreur.
1 exemple: Lancer un programme, attendre sa fenêtre, agir dessus