Получить связанные элементы Версия 2 (Net)

Группа действий: Windows  Подгруппа "Работа с win-элементами"


Описание

Действие проверяет указанный элемент и возвращает связанные с ним элементы (родительские/дочерние/соседние)
Пример на "Блокноте":

Для элемента "Масштаб" соседним элементом будет "Строка состояния". Родительский элемент - "Вид". Дочерние элементы: "Увеличить", "Уменьшить", "Восстановить масштаб по умолчанию".

Иконка действия

Параметры и их настройки

СвойствоОписаниеТипПример заполненияОбязательность заполнения поляПримечание
Параметры 
ЭлементРесурс который хранит данные о выбранном элементе приложенияRobin.WinElement
Да
Тип связи Тип связи между искомыми элементами и указанным. Можно искать элементы, которые являются родительскими, дочерними или соседними по отношению к указанному элементу. Соседние имеют общий родительский элемент с искомым элементомRobin.Numeric
Да

Выпадающий список с элементами:

  • Родительские элементы
  • Дочерние элементы
  • Соседние элементы
Глубина поискаУровень вложенности связанных элементов, до которого будет производиться поиск. Если указанная глубина больше фактической, действие вернет все элементы до фактической глубины Значение по умолчанию - 1. Параметр игнорируется, если в поле "Тип связи" выбрано значение "Соседние элементы"Robin.Numeric
Нет
Тайм-аутВремя в миллисекундах, в течение которого будет происходить поиск нужного элементаRobin.Numeric
Нет
Номер окнаПорядковый номер окна, с которым должно работать действие. Если не указать номер окна, будет проверено первое окно. Нумерация начинается с 1Robin.Numeric
Нет

Особые условия использования

Если пользователь в "Тип связи" выбирает "Родительские элементы" и у указанного win-элемента отсутствует родитель, то в результате вернется пустая коллекция.
Если пользователь в "Тип связи" выбирает "Соседние элементы" и у указанного win-элемента отсутствуют соседи, то в результате вернется пустая коллекция.
Если пользователь в "Тип связи" выбирает "Дочерние элементы" и у указанного win-элемента отсутствуют дети, то в результате вернется пустая коллекция.
Метод обхода графа - в ширину.

Пример работы действия

  • Пользователь указал элемент L, "Глубина поиска"=3, "Тип связи" = "Родительские элементы". Результат - коллекция с элементами E, B, A;
  • Пользователь указал элемент B, "Глубина поиска"=2, "Тип связи" = "Дочерние элементы". Результат - коллекция с элементами D, E, I, J, K, L;
  • Пользователь указал элемент F, "Тип связи" = "Соседние элементы". Результат - коллекция с элементами G,H;
  • Пользователь указал элемент A, "Тип связи" = "Родительские элементы". Результат - пустая коллекция;
  • Пользователь указал элемент A, "Тип связи" = "Соседние элементы". Результат - пустая коллекция;
  • Пользователь указал элемент I, "Тип связи" = "Дочерние элементы". Результат - пустая коллекция.

Пример использования 

Задача

Открыто окно с названием "Блокнот". Необходимо получить соседние, дочерние и родительские элементы элемента "Масштаб".

Решение

Воспользоваться действием "Получить связанные элементы". 

Реализация

  1.  Собрать робота, состоящего из действий. 

  2. Настроить параметры действия "Запустить процесс".

  3. Настроить параметр действия "Фокус на элементе Вид". Элемент необходимо получить с помощью инструмента WinSpy. Работа с WinSpy описана в разделе Получение win-элемента. Установка тайм-аута, в целом, не приводит к увеличению времени выполнения действия сверх того времени, которое потребуется для того, чтобы элемент, который мы используем в действии стал видимым и доступным. В течение установленного тайм-аута действие пытается получить доступ к элементу с которым работает. Как только появляется доступ к элементу, ожидание тайм-аут заканчивается.

  4. Настроить параметр действия "Фокус на элементе Масштаб". Элемент необходимо получить с помощью инструмента WinSpy. Работа с WinSpy описана в разделе Получение win-элемента.

  5. Настроить параметр действия "Получить связанные элементы". Выбираем ранее полученный с помощью инструмента WinSpy элемент "Масштаб1" и тип связи - Дочерние элементы.

  6. Настроить параметр действия "Получить длину". В поле Коллекция или массив, указываем результат действия "Получить связанные элементы".

  7. Настроить параметр действия "Вычитание". Второй операнд будет 1.

  8. Настроить параметр цикла "Для". В поле Конечное значение, указываем результат действия "Вычитание".

  9. Настроить параметр действия "Получить значение по индексу". В поле Коллекция, указываем результат действия "Получить связанные элементы", в поле Индекс, указываем состояния итератора цикла "Для".

  10. Настроить параметры действия "Завершить процесс".
  11. Нажать на кнопку "Старт" в верхней панели. 

Результат

Программный робот отработал успешно.

Дочерние элементы "Увеличить", "Уменьшить", "Восстановить масштаб по умолчанию" получены.


Пример 2

  1. Изменить параметр действия "Получить связанные элементы". Выбираем ранее полученный с помощью инструмента WinSpy элемент "Масштаб1" и тип связи - Родительские элементы. 

  2. Нажать на кнопку "Старт" в верхней панели. 

Результат

Программный робот отработал успешно.

Родительский элемент "Вид" получен.

Пример 3

  1. Изменить параметр действия "Получить связанные элементы". Выбираем ранее полученный с помощью инструмента WinSpy элемент "Масштаб1" и тип связи - Соседние элементы. 

  2. Нажать на кнопку "Старт" в верхней панели. 

Результат

Программный робот отработал успешно.

Соседний элемент "Строка состояния" получен.

  • Нет меток