|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Какие координаты нужно указать для ControlClcik в созданном GUI |
|
[решено] Какие координаты нужно указать для ControlClcik в созданном GUI
|
Пользователь Сообщения: 143 |
Профиль | Отправить PM | Цитировать
Я немного изменил код который приводил кнопки убрал....
#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Opt("MouseCoordMode", 2) HotKeySet("{ESC}","click") Example() Func Example() Local $oIE, $GUIActiveX $oIE = ObjCreate("Shell.Explorer.2") GUICreate("Embedded Web control Test", 640, 580, 10,10, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN)) $GUIActiveX = GUICtrlCreateObj($oIE, 1, 1, 640, 580) GUISetState() $oIE.navigate("http://www.autoitscript.com") While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE ExitLoop EndSelect WEnd GUIDelete() EndFunc Func click() MsgBox(0,"","должны нажать на ссылку Autoit v3") MouseMove(93, 387) ; мышь переместится на картинку скачать AUTO IT.... ControlClick("AutoIt v3 GUI","","Internet Explorer_Server1","main",93, 387) EndFunc для позиционирования мышки выставил Opt("MouseCoordMode", 2) мышка ставится куда надо, как такое же повторить с ControlClick ? |
|
Отправлено: 23:49, 04-05-2010 |
Ветеран Сообщения: 553
|
Профиль | Отправить PM | Цитировать |
Отправлено: 08:05, 05-05-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать HORRIBLE,
Попробуйте закомментировать строки В начале скрипта добавить А функцию написать так |
Отправлено: 09:04, 05-05-2010 | #3 |
Пользователь Сообщения: 143
|
Профиль | Отправить PM | Цитировать madmasles, FlatX007, так и знал, что так ответите). Я знаю, что так можно кликнуть/перейти по ссылке, но мне нужно использовать именно CONTROLCLICK с координатами.
Может понятней будет, если перейдя по http://www.autoitscript.com будет загружен сайт написанный на флеше......ссылок нет, есть только кнопки.....тут уже _IELinkClickByText($oIE, "Autoit v3") не спасет, мышкой клацнуть можно, но комп занят тогда, можно CONTROLCLICK использовать только мне не понятно какие координаты вписывать. |
Отправлено: 11:42, 05-05-2010 | #4 |
Старожил Сообщения: 367
|
Профиль | Отправить PM | Цитировать HORRIBLE, у ControlClick координаты - необязательный параметр, который лишь указывает в какую именно точку контрола кликать. Если у тебя вся страница, или нужно кликать по координатам огромного контрола который на самом деле содержит другие элементы типа кнопки, то процитирую тут сообщение спеца в этом деле El Panda с дружественного форума
Цитата:
|
||
------- Отправлено: 12:25, 05-05-2010 | #5 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать HORRIBLE,
У меня так получилось: Func click() BlockInput(1) $aClientPos = WinGetPos("[TITLE:Embedded Web control Test;CLASS:AutoIt v3 GUI]") $aClientSize = WinGetClientSize("[TITLE:Embedded Web control Test;CLASS:AutoIt v3 GUI]") MouseMove($aClientPos[0], $aClientPos[1]) $cord = PixelSearch($aClientPos[0], $aClientPos[1], $aClientSize[0], $aClientSize[1], 0x6000B3) MouseMove($cord[0], $cord[1]) MsgBox(0, "", "Здесь сейчас кликнем", 3) MouseClick("left", $cord[0], $cord[1], 1, 1) BlockInput(0) EndFunc ;==>click |
Отправлено: 12:43, 05-05-2010 | #6 |
Ветеран Сообщения: 553
|
Профиль | Отправить PM | Цитировать madmasles - а у меня промахивается мимо окна и ничего не нажимает
Цитата HORRIBLE:
|
|
Отправлено: 13:03, 05-05-2010 | #7 |
Пользователь Сообщения: 143
|
Профиль | Отправить PM | Цитировать Я изменил код который вверуху приведен. (удалил кнопки не нужные) Показал куда мышка перемещается...туда должен ControlClick кликнуть. см. вверху.
madmasles, с мышкой у меня тоже все на ура прошло. Как и писал FlatX007, kaster, заинтересовало, но все равно вопрос остался ). |
Последний раз редактировалось HORRIBLE, 05-05-2010 в 15:09. Причина: Поправил сообщение. Отправлено: 14:09, 05-05-2010 | #8 |
Ветеран Сообщения: 812
|
Профиль | Отправить PM | Цитировать FlatX007,
HORRIBLE, Уточните у себя цвет ссылки при помощи Au3Info. У меня на разных мониторах разное значение цвета, когда меняю, то у меня работает. |
Отправлено: 14:25, 05-05-2010 | #9 |
Пользователь Сообщения: 143
|
Профиль | Отправить PM | Цитировать Черт, все нашел....в Au3Info, оказывается координаты указаны для ControlClick.
|
Отправлено: 23:27, 05-05-2010 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] какие драйвера нужно установить? | Saaxov | Поиск драйверов, прошивок и руководств | 4 | 23-11-2009 22:41 | |
FreeBSD - FreeBSD 7.2 помогите навтроить сеть (нужно для двух ветевух указать разные шлюзы) | kot318 | Общий по FreeBSD | 5 | 30-09-2009 13:39 | |
Драйвер - Какие драйвера нужно качать под установку XP что подсовываются системе F6 | Rock | Microsoft Windows 2000/XP | 5 | 15-04-2008 02:18 | |
Какие порты нужно оставить открытыми | utp_ss | Сетевые технологии | 1 | 02-03-2007 14:30 | |
какие порты нужно открывать для DNS | pingUIN | Хочу все знать | 3 | 20-02-2007 16:15 |
|