Проверить существование элемента Версия 7 (Net)
Группа действий: Windows
Описание
Действие проверяет, существует ли на экране указанный элемент
Иконка действия
Параметры и их настройки
Свойство | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
Параметры | ||||
Элемент | Ресурс который хранит данные о выбранном элементе приложения | Robin.WinElement | Да | |
Тайм-аут | Время в миллисекундах, в течение которого будет происходить поиск нужного элемента | Robin.Numeric | Нет | |
Номер окна | Порядковый номер окна, с которым должно работать действие. Если не указать номер окна, будет проверено первое окно. Нумерация начинается с 1 | Robin.Numeric | Нет | |
Результаты | ||||
Результат | Если значение равно "true", искомый элемент существует. Если значение равно "false", искомого элемента не существует | Robin.Boolean | true |
Особые условия использования
Робот вернет ошибку, если:
- окно не найдено;
- введен несуществующий номер окна.
Действие ищет на экране элемент, запрашиваемый пользователем. Пользователь вводит свойства искомого элемента в поле "Элемент" . Действие возвращает результат "true", когда элемент найден. Если искомый элемент не находится, то результат действия будет "false".
Если найдено несколько элементов, которые подходят под указанные параметры, действие не должно вызывать ошибку. Действие возвращает значение "true".
Если в поле указан номер окна =1, а элемент находится в другом окне, то действие вернет "false".
Если указан номер окна за диапазоном количества окон (>), то взаимодействие происходит с первым открытым окном.
Если открыто одно окно, то параметр "Номер окна" игнорируется, не выпадет ошибка, НО в случае, когда введено отрицательное значение, робот выдаст ошибку.
Номер окна | Количество окон | Взаимодействия робота |
---|---|---|
Не заполнено | Несколько (2+) | С первым открытым окном |
Заполнено корректно (1+) | Несколько (2+) | С указанным окном |
Заполнено несуществующим номером окна (10) | Несколько (2) | С первым открытым окном |
Заполнено корректно (1+) | 1 окно | С единственным окном |
Заполнено отрицательным числом | 1 или несколько окон | Ошибка |
Окна идут в порядке, в котором запускались.
Пример использования
Задача
Открыто окно. Необходимо определить существует ли на нем элемент.
Решение
Воспользоваться действиями "Проверить существование элемента", "Если", "Сообщение".
Реализация
- Перенести действие "Проверить существование элемента" и заполнить его параметры.
Элемент необходимо получить с помощью инструмента WinSpy. Работа с WinSpy описана в разделе Получение win-элемента.
Установка тайм-аута, в целом, не приводит к увеличению времени выполнения действия сверх того времени, которое потребуется для того, чтобы элемент, который мы используем в действии стал видимым и доступным. В течение установленного тайм-аута действие пытается получить доступ к элементу с которым работает. Как только появляется доступ к элементу, ожидание тайм-аут заканчивается. - Перенести действие "Если" и заполнить его параметры.
В поле условие, указываем результат действия "Проверить существование элемента". - В ветку "Истина" перенести действие "Сообщение".
В поле "Текст сообщения" указать текст "Элемент найден". Таким образом, если элемент будет найден в окне, то робот выведет данное сообщение. - В ветку "Ложь" перенести действие "Сообщение".
В поле "Текст сообщения" указать текст "Элемент не найден". Таким образом, если элемент не будет найден в окне, то робот выведет данное сообщение. - Нажать на кнопку "Старт" в верхней панели. Итоговая схема робота будет выглядеть таким образом.
Результат
Программный робот отработал успешно.
Элемент найден. Робот вывел соответствующее сообщение.