Группа действий: Windows Подгруппа "Работа с win-элементами"
Действие проверяет указанный элемент и возвращает связанные с ним элементы (родительские/дочерние/соседние)
Пример на "Блокноте":
Для элемента "Масштаб" соседним элементом будет "Строка состояния". Родительский элемент - "Вид". Дочерние элементы: "Увеличить", "Уменьшить", "Восстановить масштаб по умолчанию".
Элемент Параметр, который хранит данные Win-элемента, координаты которого будут проверяться
Тип связи Выпадающий список с элементами: "Родительские элементы", "Дочерние элементы", "Соседние элементы"
Если выбрана "Родительский элемент", то в результате вернется коллекция с win-элементами, которые являются родителями для указанного элемента
Если выбрана "Дочерние элементы", то в результате вернется коллекция с win-элементами, которые являются дочерними для указанного элемента
Если выбрано "Соседние элементы", то в результате вернется коллекция с win-элементами, которые являются "соседями" для указанного элемента, то есть имеют общего родителя
Глубина поиска Уровень вложенности связанных элементов, до которого будет производиться поиск. Положительное целое число от 1 до бесконечности
По умолчанию - "1". Глубина не учитывается, если в "Тип связи" выбрано значение "Соседние элементы"
Если глубина, указанная в параметре, больше фактической глубины в приложении, то берутся все элементы до фактической глубины
Тайм-аут Время в миллисекундах, в течение которого будет происходить поиск нужного элемента
Номер окна Порядковый номер окна, с которым будет взаимодействовать действие, если обнаружено несколько окон
При этом действие ищет только те окна, в которых должен находиться элемент согласно его параметрам
Положительное целое число от 1. По умолчанию - "1"
Результат Коллекция win-элементов
Свойство | Описание | Тип | Пример заполнения | Обязательность заполнения поля | Примечание |
Параметры | |||||
Элемент | Ресурс который хранит данные о выбранном элементе приложения | Robin.WinElement | Да | ||
Тип связи | Тип связи между искомыми элементами и указанным. Можно искать элементы, которые являются родительскими, дочерними или соседними по отношению к указанному элементу. Соседние имеют общий родительский элемент с искомым элементом | Robin.Numeric | Да | Выпадающий список с элементами:
| |
Глубина поиска | Уровень вложенности связанных элементов, до которого будет производиться поиск. Если указанная глубина больше фактической, действие вернет все элементы до фактической глубины Значение по умолчанию - 1. Параметр игнорируется, если в поле "Тип связи" выбрано значение "Соседние элементы" | Robin.Numeric | Нет | ||
Тайм-аут | Время в миллисекундах, в течение которого будет происходить поиск нужного элемента | Robin.Numeric | Нет | ||
Номер окна | Порядковый номер окна, с которым должно работать действие. Если не указать номер окна, будет проверено первое окно. Нумерация начинается с 1 | Robin.Numeric | Нет |
Если пользователь в "Тип связи" выбирает "Родительские элементы" и у указанного win-элемента отсутствует родитель, то в результате вернется пустая коллекция.
Если пользователь в "Тип связи" выбирает "Соседние элементы" и у указанного win-элемента отсутствуют соседи, то в результате вернется пустая коллекция.
Если пользователь в "Тип связи" выбирает "Дочерние элементы" и у указанного win-элемента отсутствуют дети, то в результате вернется пустая коллекция.
Метод обхода графа - в ширину.
Задача
Открыто окно с названием "Блокнот". Необходимо получить соседние, дочерние и родительские элементы элемента "Масштаб".
Решение
Воспользоваться действием "Получить связанные элементы".
Реализация
Программный робот отработал успешно.
Дочерние элементы "Увеличить", "Уменьшить", "Восстановить масштаб по умолчанию" получены.
Программный робот отработал успешно.
Родительский элемент "Вид" получен.
Программный робот отработал успешно.
Соседний элемент "Строка состояния" получен.