![]() |
ClassnameNN
Добрый день!
Уважаемые знатоки, подскажите пожалуйста, как сделать можно функцию. Есть кнопка в ней ClassnameNN: WindowsForms10.BUTTON.app0 нужно сделать так, что пока не нажмешь на нее следующие действие не выполнялось.. Буду рад любой помощи, а то не знаю где искать уже. |
Цитата:
|
Цитата:
|
попробуете в эту сторону покопать:
Код:
Local $hObj = WinGetHandle("[CLASS:WindowsForms10.BUTTON.app0]") |
Цитата:
Попробовал #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 не работает, при нажатии на кнопку нечего не происходит. |
а $hWnd на кнопку получаете без ошибки?
|
Цитата:
в 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 |
1) проверьте на ошибку сразу WinGetHandle ( не после функции GUICtrlSetState)
Local $hWnd = WinGetHandle( ... If @error Then ... 2) app уже другой, был 0 стал 48.. WindowsForms10.BUTTON.app48 |
Цитата:
Проверил, окно видит If not WinActive("Title") Then WinActivate("Title") $handle = WinGetHandle("Title", "") If @error Then MsgBox(4096, "Error", "Окно не найдено") Else Сюда нужна функция MsgBox(4096, "ОК", "Окно найдено") EndIf |
Нет не у кого соображений как можно сделать
|
Что то все затихли ((( Не у желе в AutoIT нельзя так сделать
|
Время: 22:21. |
Время: 22:21.
© OSzone.net 2001-