|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » ClassnameNN |
|
|
ClassnameNN
|
Новый участник Сообщения: 25 |
Профиль | Отправить PM | Цитировать Добрый день!
Уважаемые знатоки, подскажите пожалуйста, как сделать можно функцию. Есть кнопка в ней ClassnameNN: WindowsForms10.BUTTON.app0 нужно сделать так, что пока не нажмешь на нее следующие действие не выполнялось.. Буду рад любой помощи, а то не знаю где искать уже. |
|
Отправлено: 15:37, 11-08-2016 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата BERGAMOD:
|
|
Отправлено: 16:05, 11-08-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 16:30, 11-08-2016 | #3 |
Новый участник Сообщения: 38
|
Профиль | Отправить PM | Цитировать |
Отправлено: 18:57, 11-08-2016 | #4 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Mike909:
Попробовал #include <MsgBoxConstants.au3> Example() Func Example() WinWait("title", "text", 10) Local $hWnd = WinGetHandle("[CLASS:WindowsForms10.BUTTON.app0]") GUICtrlSetState($hWnd, $GUI_DISABLE) If @error Then MsgBox(0, "", "Произошла ошибка при попытке получить дескриптор окна.") Exit EndIf MsgBox(0, "TEST", 'TEST') WinClose($hWnd) EndFunc не работает, при нажатии на кнопку нечего не происходит. |
||
Последний раз редактировалось BERGAMOD, 12-08-2016 в 09:45. Отправлено: 09:13, 12-08-2016 | #5 |
Новый участник Сообщения: 38
|
Профиль | Отправить PM | Цитировать а $hWnd на кнопку получаете без ошибки?
|
Отправлено: 10:34, 12-08-2016 | #6 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Mike909:
в Summary выглядит так >>>> Window <<<< Title: Искать Class: WindowsForms10.Window.8.app48 Position: 164, 114 Size: 1271, 941 Style: 0x16CF0000 ExStyle: 0x00050100 Handle: 0x00FE0B56 >>>> Control <<<< Class: WindowsForms10.BUTTON.app48 Instance: 5 ClassnameNN: WindowsForms10.BUTTON.app485 Name: loadObject Advanced (Class): [NAME:loadObject] ID: 4785752 Text: Position: 0, 164 Size: 20, 20 ControlClick Coords: 10, 12 Style: 0x5600000B ExStyle: 0x00000000 Handle: 0x00490658 >>>> Mouse <<<< Position: 182, 320 Cursor ID: 2 Color: 0x616161 |
|
Отправлено: 11:14, 12-08-2016 | #7 |
Новый участник Сообщения: 38
|
Профиль | Отправить PM | Цитировать 1) проверьте на ошибку сразу WinGetHandle ( не после функции GUICtrlSetState)
Local $hWnd = WinGetHandle( ... If @error Then ... 2) app уже другой, был 0 стал 48.. WindowsForms10.BUTTON.app48 |
Отправлено: 12:52, 12-08-2016 | #8 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Mike909:
Проверил, окно видит If not WinActive("Title") Then WinActivate("Title") $handle = WinGetHandle("Title", "") If @error Then MsgBox(4096, "Error", "Окно не найдено") Else Сюда нужна функция MsgBox(4096, "ОК", "Окно найдено") EndIf |
|
Отправлено: 10:01, 15-08-2016 | #9 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Нет не у кого соображений как можно сделать
|
Отправлено: 08:50, 16-08-2016 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
|