Перейти к содержимому

Поиск элементов

image_1

Описание

Блок выполняет поиск связанных UI-элементов десктопного приложения и возвращает список найденных объектов.


Описание параметров

Блок имеет несколько параметров:

  1. Иерархия элементов - определяет, какие элементы требуется получить: родительский, дочерние или текущий элемент.

    Тип данных: dropdown (Список)

    Пример: Дочерние элементы

  2. Фокус на элементе - переводит элемент на передний план перед поиском.

    Тип данных: checkbox (Чекбокс)

    Пример:

  3. Использовать объект элемента - позволяет передать объект UI-элемента или JSON-строку.

    Тип данных: object (Объект элемента) | str (Строка)

    Пример: [{"ControlTypeName":"ButtonControl","Name":"5"}]

    image_2

    JSON-строка указывается с помощью блока создать строку.

    image_3

Для выбора элемента можно использовать Master UI для десктопных приложений или выбрать элемент из выпадающего списка, если он уже был предварительно получен через Master UI.

Возвращаемое значение

Тип данных: list (Список)

Пример: [<element_1>, <element_2>]

Блок возвращает список объектов найденных UI-элементов в виде:

[
<uiautomation.uiautomation.ListItemControl object at 0x000001E85246C3D0>,
<uiautomation.uiautomation.ListItemControl object at 0x000001E852557590>
]

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

В данном примере открывается приложение Калькулятор и выполняется поиск всех дочерних элементов кнопки “5”. Затем выполняется считывание свойства class_name каждого найденного элемента.

Для выбора элемента в блоке Поиск элементов используется инструмент Master UI для десктопных приложений. Для этого:

  1. Открывается инструмент Master UI для десктопных приложений;
  2. Выполняется выбор элемента, соответствующий кнопке 5 в приложение калькулятор. image_4

Алгоритм состоит из блоков:

  • Открыть приложение calc.exe;

  • Поиск дочерних элементов;

  • Цикл по найденным элементам - в переменную element записываются по порядку и обрабатываются внутри цикла значения (объекты элементов) из списка элементов elements;

  • Внутри цикла: Считывание свойства class_name каждого дочернего элемента и вывод результата на экран.

    image_5

Результат

Вывод результата на экран:

image_6