Показать полную графическую версию : ClassnameNN
BERGAMOD
11-08-2016, 15:37
Добрый день!
Уважаемые знатоки, подскажите пожалуйста, как сделать можно функцию.
Есть кнопка в ней ClassnameNN: WindowsForms10.BUTTON.app0 нужно сделать так, что пока не нажмешь на нее следующие действие не выполнялось..
Буду рад любой помощи, а то не знаю где искать уже.
Есть кнопка »
Где «есть кнопка»?
BERGAMOD
11-08-2016, 16:30
Где «есть кнопка»? »
кнопка не определяется как BUTTON поэтому и нужно сделать по ClassnameNN: WindowsForms10.BUTTON.app0
попробуете в эту сторону покопать:
Local $hObj = WinGetHandle("[CLASS:WindowsForms10.BUTTON.app0]")
GUICtrlSetState($hObj, $GUI_DISABLE)
BERGAMOD
12-08-2016, 09:13
Local $hObj = WinGetHandle("[CLASS:WindowsForms10.BUTTON.app0]")
GUICtrlSetState($hObj, $GUI_DISABLE) »
Попробовал
#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 на кнопку получаете без ошибки?
BERGAMOD
12-08-2016, 11:14
а $hWnd на кнопку получаете без ошибки?»
я да же ничего не делаю все равно срабатывает MsgBox(0, "TEST", 'TEST')
в 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
BERGAMOD
15-08-2016, 10:01
1) проверьте на ошибку сразу WinGetHandle ( не после функции GUICtrlSetState)
Local $hWnd = WinGetHandle( ...
If @error Then ...
2) app уже другой, был 0 стал 48.. WindowsForms10.BUTTON.app48 »
ClassnameNN: WindowsForms10.BUTTON.app0 это пример.
Проверил, окно видит
If not WinActive("Title") Then WinActivate("Title")
$handle = WinGetHandle("Title", "")
If @error Then
MsgBox(4096, "Error", "Окно не найдено")
Else
Сюда нужна функция
MsgBox(4096, "ОК", "Окно найдено")
EndIf
BERGAMOD
16-08-2016, 08:50
Нет не у кого соображений как можно сделать
BERGAMOD
17-08-2016, 10:57
Что то все затихли ((( Не у желе в AutoIT нельзя так сделать
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.