Ir para o conteúdo
Todas as ferramentas

ui_wait_for_element

Ecrã, janelas e interface · macOS · Windows

Efeito: leitura. Estado: disponibilidade condicionada.

«Disponibilidade condicionada» significa que a ferramenta pode depender da versão, plataforma, permissões, conta ou configuração. Não significa que esteja ativa em todas as instalações.

macOS

Finalidade

Sincronização determinística — substitui todas as esperas com sleep. Consulta repetidamente um elemento até que ele atinja state (present|enabled|focused|absent) ou o tempo limite se esgote. Um tempo limite esgotado é um erro EXPLÍCITO, nunca um falso sucesso. Retorna {satisfied, waited_ms, element_ref?, bounds?, role?, label?, enabled_unknown?}. state:'enabled' é satisfeito, a menos que o aplicativo publique AXEnabled=false; se o aplicativo não publicar nenhum AXEnabled, o resultado traz enabled_unknown:true — a espera não bloqueou, mas nada foi realmente verificado quanto à habilitação.

Entradas obrigatórias

O esquema desta plataforma não declara entradas obrigatórias. Ainda podem existir seletores opcionais ou requisitos de execução.

Permissões e confirmação

O esquema não declara um parâmetro explícito de confirmação. Isto não autoriza qualquer ação sem permissão; reveja o efeito e obtenha autorização.

Esquema técnico canónico em inglês — 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"
}

Exemplo documental

Exemplo de documentação para ui_wait_for_element. Não execute este exemplo. Os argumentos apresentados pertencem a um conjunto de dados fictício; resolva identificadores reais e obtenha autorização antes de uma chamada real.

{
  "label": "Save"
}

Windows

Finalidade

Sincronização determinística — substitui todas as suspensões. Pesquisa um elemento até que ele atinja o estado (presente|ativado|focado|ausente) ou expire (enabled, focused, present|enabled|focused|absent). Um tempo limite é um erro EXPLICIT, nunca um falso sucesso. Retorna {satisfied,waited_ms,element_ref? ,bounds? }.

Entradas obrigatórias

O esquema desta plataforma não declara entradas obrigatórias. Ainda podem existir seletores opcionais ou requisitos de execução.

Permissões e confirmação

O esquema não declara um parâmetro explícito de confirmação. Isto não autoriza qualquer ação sem permissão; reveja o efeito e obtenha autorização.

Esquema técnico canónico em inglês — 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"
}

Exemplo documental

Exemplo de documentação para ui_wait_for_element. Não execute este exemplo. Os argumentos apresentados pertencem a um conjunto de dados fictício; resolva identificadores reais e obtenha autorização antes de uma chamada real.

{
  "label": "Save"
}