Функция _GUICtrlButton_Click

         Описание функции


_GUICtrlButton_Click

Эмулирует клик на кнопке

#include <GuiButton.au3>
_GUICtrlButton_Click($hWnd)

Параметры

$hWnd Дескриптор или идентификатор элемента

Примечания

Если кнопка находится в диалоговом окне и диалоговое окно не активно, то _GUICtrlButton_Click может завершиться неудачей.
Чтобы гарантировать успех в этой ситуации, используйте WinActivate, чтобы активизировать диалоговое окно перед вызовом _GUICtrlButton_Click для клика кнопки.

См. также

Искать BM_CLICK в библиотеке MSDN

Пример

#include <GUIConstantsEx.au3>
#include <GuiButton.au3>

Global $btn[6], $iMemo, $iRand

HotKeySet("!1", "_Clickit")

_Main()

Func _Main()
    Local $y = 70

    GUICreate("Эмуляция клика кнопки", 510, 400)
    $iMemo = GUICtrlCreateEdit("", 119, 10, 376, 374, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")

    MemoWrite("Нажми Alt+1, чтобы кликнуть кнопку")

    $btn[0] = GUICtrlCreateButton("Кнопка1", 10, 10, 100, 50)

    For $x = 1 To 5
        $btn[$x] = GUICtrlCreateButton("Кнопка" & $x + 1, 10, $y, 100, 50)
        $y += 60
    Next

    $iRand = Random(0, 5, 1)
    _GUICtrlButton_SetText($btn[$iRand], "Новый текст" & $iRand + 1)

    GUISetState()

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                ExitLoop
            Case $btn[$iRand]
                MemoWrite('Нажата "' & _GUICtrlButton_GetText($btn[$iRand]) & '"')
        EndSwitch
    WEnd

    Exit
EndFunc   ;==>_Main

Func _Clickit()
    $iRand = Random(0, 5, 1)
    _GUICtrlButton_Click($btn[$iRand])
EndFunc   ;==>_Clickit

; Записывает строку в элемент для заметок
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite