Zum Inhalt springen
Alle Werkzeuge

ui_wait_for_element

Bildschirm, Fenster und Oberfläche · macOS · Windows

Wirkung: Lesen. Status: bedingt verfügbar.

„Bedingte Verfügbarkeit“ bedeutet, dass das Werkzeug von Version, Plattform, Berechtigungen, Konto oder Konfiguration abhängen kann. Es ist nicht in jeder Installation aktiv.

macOS

Zweck

Deterministische Synchronisierung – ersetzt alle Sleeps. Fragt wiederholt nach einem Element, bis es state (present|enabled|focused|absent) erreicht oder das Zeitlimit abläuft. Ein Timeout ist ein EXPLIZITER Fehler, niemals ein falscher Erfolg. Gibt {satisfied, waited_ms, element_ref?, bounds?, role?, label?, enabled_unknown?} zurück. state:'enabled' ist erfüllt, es sei denn, die App veröffentlicht AXEnabled=false; veröffentlicht die App überhaupt kein AXEnabled, enthält das Ergebnis enabled_unknown:true – das Warten hat nicht blockiert, aber es wurde tatsächlich nichts darüber verifiziert, ob das Element aktiviert ist.

Erforderliche Eingaben

Das Schema dieser Plattform deklariert keine erforderlichen Eingaben. Optionale Selektoren oder Laufzeitanforderungen können dennoch gelten.

Berechtigungen und Bestätigung

Das Schema deklariert keinen ausdrücklichen Bestätigungsparameter. Das erlaubt keine Handlung ohne Zustimmung; prüfen Sie die Wirkung und holen Sie eine Autorisierung ein.

Kanonisches technisches Schema auf Englisch — 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"
}

Dokumentationsbeispiel

Dokumentationsbeispiel für ui_wait_for_element. Führen Sie dieses Beispiel nicht aus. Die gezeigten Argumente gehören zu einem fiktiven Datensatz; ermitteln Sie reale Kennungen und holen Sie vor einem echten Aufruf die Genehmigung ein.

{
  "label": "Save"
}

Windows

Zweck

Deterministische Synchronisierung – ersetzt alle Schlafphasen. Fragt ein Element ab, bis es den Status (present|enabled|focused|absent) erreicht oder eine Zeitüberschreitung auftritt. Ein Timeout ist ein EXPLICIT-Fehler, niemals ein falscher Erfolg. Gibt {satisfied, waited_ms, element_ref?, bounds?} zurück.

Erforderliche Eingaben

Das Schema dieser Plattform deklariert keine erforderlichen Eingaben. Optionale Selektoren oder Laufzeitanforderungen können dennoch gelten.

Berechtigungen und Bestätigung

Das Schema deklariert keinen ausdrücklichen Bestätigungsparameter. Das erlaubt keine Handlung ohne Zustimmung; prüfen Sie die Wirkung und holen Sie eine Autorisierung ein.

Kanonisches technisches Schema auf Englisch — 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"
}

Dokumentationsbeispiel

Dokumentationsbeispiel für ui_wait_for_element. Führen Sie dieses Beispiel nicht aus. Die gezeigten Argumente gehören zu einem fiktiven Datensatz; ermitteln Sie reale Kennungen und holen Sie vor einem echten Aufruf die Genehmigung ein.

{
  "label": "Save"
}