Что нового

UIAutomate записать в массив полученные с помощью _UIA_FindAllElements данные

DyadyaGenya

Знающий
Сообщения
300
Репутация
10
Доброго времени суток. Пробую записать в массив полученные с помощью _UIA_FindAllElements данные. В окне сообщения результаты видны, но при большом количестве видно не все сообщение, а прокрутки нет. Да и работать потом с данными удобнее из массива, поскольку если просто вывести массив без использования _UIA_ElementGetPropertyValue, то массив есть, но значения не видны
Код:
Local $aTabs = _UIA_FindAllElements($oParent, "ControlType", $UIA_CheckBoxControlTypeId)
If @error Then Exit MsgBox(0x40000, "Ошибка", "Значения")
_ArrayDisplay($aTabs, "таблица значений") ; Тут массив есть, но значения не видны, их нужно прочитать, получить, что и делается ниже

MsgBox(0x40000, "", "Количество значений: " & $aTabs[0])
; Вывод данных в сообщении
Local $sTabs
For $i = 1 To $aTabs[0]
    $sTabs &= _UIA_ElementGetPropertyValue($aTabs[$i], $UIA_NamePropertyId) & @CRLF & @CRLF
 Next
MsgBox(0x40000, "", "Значения: " & @CRLF & @CRLF & $sTabs)
; Вывод данных в массив не работает, при этом в консоль записывает
Local $siTabs
For $i = 1 To $aTabs[0]
    Local $seeTabs = _UIA_ElementGetPropertyValue($aTabs[$i], $UIA_NamePropertyId)
    ConsoleWrite($seeTabs & @CR)
    _ArrayAdd($siTabs, $seeTabs)
 Next
 _ArrayDisplay($siTabs, "Массив найденных значений") ; Не показывается массив вообще

Сообщение автоматически объединено:

Все, вопрос решился. Моя невнимательность. Вместо объявления массива объявлял переменную (нужно было Local $siTabs[0], а я писал Local $siTabs)
 
Последнее редактирование:
Верх