Что нового

[Элементы GUI] Выбор элемента в TreeView

Arbios

Новичок
Сообщения
18
Репутация
0
Долго пытался найти ответ сам, но так и не нашел :stars:

Пытаюсь автоматизировать специализированную программу написанную на C++, сама прога громоздкая и прикрепить не получится.
В программе есть небольшое меню, определяется как SysTreeView32, пытаюсь определить ID нодов, ни в какую не получается, самое обидное, что даже если найду, не понимаю как произвести клик по ID нода. И вообще не могу понять, каким образом объяснить скрипту, что нужно найти "Form1", там поискать "SysTreeView32" и там уже кликнуть по "Node1" используя _GUICtrlTreeView_ClickItem. :scratch:

Все что требуется, это сделать клик по этому пункту, варианты с кликом по позиции или PixelSearch не подходят.

Все вопросы сводятся к тому:
1) Как найти ID элемента в дереве?
2) И как по нему кликнуть.

Очень прошу не отсылать в левую тему, потому, что наверняка я её уже видел и ничего не понял :'(

В этой теме http://autoit-script.ru/index.php?topic=12024.0 почти ответили на мой вопрос, но там в тот же _GUICtrlTreeView_ClickItem передается информация об созданном в этом же скрипте окне, а мне нужно окно другой программы.

Нашел решение :IL_AutoIt_1::
Код:
#include <GuiTreeView.au3>

$WinTitle= "Заголовок окна"
WinActivate($WinTitle)

$myTreeViewhDTCtrl = ControlGetHandle($WinTitle, "", "SysTreeView321")
$myItem = _GUICtrlTreeView_FindItem($myTreeView, "Искомый пункт", False)
_GUICtrlTreeView_ClickItem ($myTreeView, $myItem, "left", True)
 
Верх