Документация 0.4 Справочник действий

Дождаться элемента

ui.waitElement · Windows

Ждёт появления или исчезновения элемента

Ждёт, пока элемент окна появится (или исчезнет). Ставьте после запуска программы, после нажатия кнопки, которая открывает окно, и перед чтением результата, который появляется не сразу. Если элемент уже на месте, шаг завершается мгновенно.

Свойства #

Свойство Имя в файле Значение Обязательное По умолчанию Описание
Селектор selector селектор Windows да —
Ждать state выбор из списка нет appear appear — появления, disappear — исчезновения. Значения: appear, disappear.
Ошибка по таймауту throwOnTimeout да/нет нет да Если выключено, по таймауту шаг завершается успешно, а «Найден» показывает результат
Таймаут, мс timeoutMs число нет 10000

Результат #

Значение выхода сохраняется в переменную, выбранную для него в свойствах шага (раздел выходов).

Выход Имя в файле
Найден found

Как работает #

  • Селектор (selector) — путь к элементу от окна приложения. Задаётся пикером: кнопка «Указать на экране», наведите курсор на элемент и нажмите Ctrl. Проверить, что селектор находит элемент, — «Подсветить»; поправить вручную — «Изменить». Подробнее — Пикер элементов.
  • Ждать (state): appear — появления, disappear — исчезновения (например, окна „Подождите…“).
  • Ошибка по таймауту (throwOnTimeout, включено) — выключите, чтобы проверить наличие элемента без ошибки: шаг завершится успешно, а выход Найден покажет, есть ли элемент.
  • Таймаут, мс (timeoutMs, по умолчанию 10000) — сколько ждать появления элемента; поиск повторяется каждые 200 мс. Если элемент нашёлся за 2 с и дольше, в лог пишется совет уточнить селектор.
  • Выход Найден — есть ли элемент в конце ожидания (да/нет).

Ошибки #

Код Причина и что делать
Timeout Элемент не появился (не исчез) за время ожидания. Увеличьте таймаут, если программа медленная, или проверьте селектор
InvalidArgument Селектор не задан или задан неверно; отрицательный таймаут

При ошибке робот сохраняет снимок экрана: в студии он открывается по ссылке «Открыть скриншот» в «Лог», в оркестраторе — на странице задания.

Пример #

Дождаться главного окна после запуска:

{
  "type": "ui.waitElement",
  "props": {
    "selector": { "kind": "uia", "path": [ { "processName": "Tulpar.TestApp", "controlType": "Window", "name": "Tulpar Test App" } ] },
    "state": "appear", "timeoutMs": 10000, "throwOnTimeout": true
  }
}