Документация 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
}
}