Aller au contenu
Tous les outils

ui_wait_for_element

Écran, fenêtres et interface · macOS · Windows

Effet: lecture. État: disponibilité conditionnelle.

«Disponibilité conditionnelle» signifie que l’outil peut dépendre de la version, de la plateforme, des autorisations, du compte ou de la configuration. Il n’est pas forcément actif partout.

macOS

Objectif

Synchronisation déterministe : remplace toutes les mises en veille. Interroge un élément jusqu'à ce qu'il atteigne l'état (present|enabled|focused|absent) ou expire. Un timeout est une erreur EXPLICITE, jamais un faux succès. Renvoie {satisfied, waited_ms, element_ref?, bounds?, role?, label?, enabled_unknown?}. state:'enabled' est satisfied sauf si l'application publie AXEnabled=false ; si l'application ne publie aucun AXEnabled, le résultat porte enabled_unknown:true - l'attente ne s'est pas bloquée, mais rien n'a été réellement vérifié sur le caractère enabled.

Entrées requises

Le schéma de cette plateforme ne déclare aucune entrée requise. Des sélecteurs facultatifs ou des conditions d’exécution peuvent néanmoins exister.

Autorisations et confirmation

Le schéma ne déclare aucun paramètre de confirmation explicite. Cela n’autorise aucune action sans permission : vérifiez l’effet et obtenez une autorisation.

Schéma technique canonique en anglais — macOS
{
  "properties": {
    "app_bundle_id": {
      "description": "Bundle id of the app to look in (e.g. com.apple.Safari). Narrows the search and makes it faster.",
      "type": "string"
    },
    "label": {
      "description": "Visible label or title of the element.",
      "type": "string"
    },
    "match": {
      "description": "How to compare label: \"exact\" (default) or \"contains\".",
      "enum": [
        "exact",
        "contains"
      ],
      "type": "string"
    },
    "poll_ms": {
      "description": "Default 150.",
      "type": "integer"
    },
    "role": {
      "description": "Accessibility role of the element (e.g. AXButton, AXTextField).",
      "type": "string"
    },
    "state": {
      "description": "Default present.",
      "enum": [
        "present",
        "enabled",
        "focused",
        "absent"
      ],
      "type": "string"
    },
    "timeout_ms": {
      "description": "Default 5000.",
      "type": "integer"
    },
    "window_id": {
      "description": "Window to look in, from list_windows. Narrows the search to one window.",
      "type": "string"
    }
  },
  "required": [],
  "type": "object"
}

Exemple documentaire

Exemple de documentation pour ui_wait_for_element. N’exécutez pas cet exemple. Les arguments présentés appartiennent à un jeu de données fictif ; résolvez les identifiants réels et obtenez une autorisation avant tout appel réel.

{
  "label": "Save"
}

Windows

Objectif

Synchronisation déterministe : remplace toutes les mises en veille. Interroge un élément jusqu'à ce qu'il atteigne l'état (present|enabled|focused|absent) ou expire. Un timeout est une erreur EXPLICITE, jamais un faux succès. Renvoie {satisfied,waited_ms,element_ref?,bounds?}.

Entrées requises

Le schéma de cette plateforme ne déclare aucune entrée requise. Des sélecteurs facultatifs ou des conditions d’exécution peuvent néanmoins exister.

Autorisations et confirmation

Le schéma ne déclare aucun paramètre de confirmation explicite. Cela n’autorise aucune action sans permission : vérifiez l’effet et obtenez une autorisation.

Schéma technique canonique en anglais — Windows
{
  "properties": {
    "app": {
      "description": "Scope to this app: process name (e.g. notepad) or a window-title substring.",
      "type": "string"
    },
    "label": {
      "description": "Name/HelpText/Value to match.",
      "type": "string"
    },
    "match": {
      "description": "Default contains.",
      "enum": [
        "exact",
        "contains"
      ],
      "type": "string"
    },
    "poll_ms": {
      "description": "Default 150.",
      "type": "integer"
    },
    "role": {
      "description": "UIA control type, e.g. Button, Edit, MenuItem, CheckBox.",
      "type": "string"
    },
    "state": {
      "description": "Default present.",
      "enum": [
        "present",
        "enabled",
        "focused",
        "absent"
      ],
      "type": "string"
    },
    "timeout_ms": {
      "description": "Default 5000.",
      "type": "integer"
    }
  },
  "required": [],
  "type": "object"
}

Exemple documentaire

Exemple de documentation pour ui_wait_for_element. N’exécutez pas cet exemple. Les arguments présentés appartiennent à un jeu de données fictif ; résolvez les identifiants réels et obtenez une autorisation avant tout appel réel.

{
  "label": "Save"
}