|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » SysTreeView32 - как с этим работать? |
|
|
SysTreeView32 - как с этим работать?
|
Старожил Сообщения: 260 |
Профиль | Отправить PM | Цитировать
Прикрепляю две фотки: 1 - то, какое окно открывается; 2 - то что нужно в этом окне сделать - выбрать в дополнительных интерфейсах установку казахского интерфейса. Как мне грамотно это сделать?
|
|
Отправлено: 14:40, 28-07-2009 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Firebolt, думаю где-то так:
#include <GuiMenu.au3> #include <GuiTreeView.au3> #Include <SendMessage.au3> #Include <WindowsConstants.au3> $WinTitle= "1С:Предприятие 8.1" $WinText = "Выберите компоненты программы" WinWait($WinTitle, $WinText) ; ищем элемент окна и последовательно нужный пункт списка $hDTCtrl = ControlGetHandle($WinTitle, "", "SysTreeView321") $hDTItem = _GUICtrlTreeView_FindItem($hDTCtrl, "Дополнительные интерфейсы") $hDTIt_1 = _GUICtrlTreeView_FindItem($hDTCtrl, "Казахский", False, $hDTItem) ; активируем окно WinActivate($WinTitle, $WinText) WinWaitActive($WinTitle, $WinText) ; переходим к нужному пункту списка _GUICtrlTreeView_SelectItem($hDTCtrl, $hDTIt_1, $TVGN_FIRSTVISIBLE) _GUICtrlTreeView_ClickItem ($hDTCtrl, $hDTIt_1, "left", True) ; вызываем контекстное меню $aRect = _GUICtrlTreeView_DisplayRect($hDTCtrl, $hDTIt_1, True) ControlClick($WinTitle, $WinText, $hDTCtrl, "left", 1, $aRect[0]-10, $aRect[1]+5) WinWait("[CLASS:#32768]") ; выбираем нужный пункт контекстного меню $hWnd = WinGetHandle("[CLASS:#32768]") $hMenu = _SendMessage($hWnd, $MN_GETHMENU, 0, 0) $aRect = _GUICtrlMenu_GetItemRect($hWnd, $hMenu, 0) MouseClick("left", $aRect[0]+20, $aRect[1]+15, 1, 1) |
Отправлено: 08:52, 29-07-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 260
|
Профиль | Отправить PM | Цитировать amel27, ничего себе! Если честно, мне тут мало чего понятно. Но спасибо большое!
|
Отправлено: 09:26, 29-07-2009 | #3 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата Firebolt:
|
|
Отправлено: 17:14, 29-07-2009 | #4 |
Старожил Сообщения: 260
|
Профиль | Отправить PM | Цитировать amel27, да вот именно! А можно все на сэндах сделать. Так я и сделал сам, на одних сэндах. Но хочу изучить язык глубже, так что ваш пример мне в этом очень поможет.
|
|
Отправлено: 20:56, 29-07-2009 | #5 |
Старожил Сообщения: 360
|
Профиль | Отправить PM | Цитировать amel27, а с такими окнами тоже по такому же принципу работать?
Как быть с такими чекбоксами? Какой функцией их снимать? Вроде и чекбоксы но AutoIT Window Info определяет их как SysTreeView32. Куда ни наведи везде INSTANCE один и тот же SysTreeView32. И как раскрыть деревья внутри которых такие же чекбоксы? |
Отправлено: 17:52, 13-09-2009 | #6 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата sacredboy:
Цитата sacredboy:
|
||
Отправлено: 03:49, 14-09-2009 | #7 |
Старожил Сообщения: 360
|
Профиль | Отправить PM | Цитировать amel27, а вот такой вопрос, ты говоришь что _GUICtrlTreeView_Expand/_GUICtrlTreeView_ExpandedOnce раскрывают все ветки (т.е. по сути нажимают плюсы для раскрытия всего дерева), а _GUICtrlTreeView_FindItem может выборочно снимать чекбоксы, если я правильно понял. Так вот, а как указывать конкретную ветку если AutoIT Window Info определяет такие ветки, в моем случае Multimedia Engine, Winamp Library, User Interface Extension и Visualisation одинаково, т.е. [CLASS:SysTreeView32; INSTANCE:1]?
|
Отправлено: 10:08, 14-09-2009 | #8 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата sacredboy:
|
|
Отправлено: 10:31, 14-09-2009 | #9 |
Старожил Сообщения: 360
|
Профиль | Отправить PM | Цитировать |
Отправлено: 18:15, 14-09-2009 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
что это и как с этим бороться | slava___sl | Лечение систем от вредоносных программ | 5 | 14-08-2009 22:38 | |
Что это такое и как с этим бороться? | truvo | Хочу все знать | 4 | 30-05-2009 11:45 | |
[решено] Как создать прогу, с этим кодом | rhaw | AutoIt | 9 | 05-02-2009 19:38 | |
EventID - Event ID: 27 Как с этим бороться??? | KraSSotka | Устранение критических ошибок Windows | 0 | 22-10-2008 08:36 | |
DRM: как с этим бороться? | X-SAT | Хочу все знать | 6 | 12-02-2007 02:39 |
|