$GUI_INACTIVE ?

  • Hi
    Ich woll mal wissen ob es möglich ist zu ermitteln ob die GUI inaktiv ist.

    Ich habe mir mal was gebastelt um das Ereigins zu ermitteln aber es ist nix geworden ;(

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Form1", 625, 443, 192, 124)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    ConsoleWrite("$GUI_EVENT_CLOSE" & @CRLF)
    Exit
    Case $GUI_EVENT_MINIMIZE
    ConsoleWrite("$GUI_EVENT_MINIMIZE" & @CRLF)
    Case $GUI_EVENT_RESTORE
    ConsoleWrite("$GUI_EVENT_RESTORE" & @CRLF)
    Case $GUI_EVENT_MAXIMIZE
    ConsoleWrite("$GUI_EVENT_MAXIMIZE" & @CRLF)
    Case $GUI_EVENT_RESIZED
    ConsoleWrite("$GUI_EVENT_RESIZED" & @CRLF)
    Case $GUI_EVENT_DROPPED
    ConsoleWrite("$GUI_EVENT_DROPPED" & @CRLF)
    EndSwitch
    If Not $nMsg = -11 And $nMsg = -10 And $nMsg = -9 And $nMsg = -8 And $nMsg = -7 And $nMsg = 0 Then ConsoleWrite($nMsg & @CRLF)
    WEnd

    [/autoit]

    schon mal Danke in Vorraus

  • Über GUIREgisterMsg bekommt man einfach heraus, wann ein Fenster des eigenen Programms aktiviert wird:

    Spoiler anzeigen
    [autoit]

    #include<WindowsConstants.au3>
    #include<GUIConstantsEx.au3>
    #include<GUIListbox.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $hGUI1 = GUICreate("testgui1")
    $hList = GUICtrlCreateList("",10, 10, 300, 200, BitOR($WS_BORDER, $WS_VSCROLL))
    GUISetState()
    ConsoleWrite("Fenster 1: " & $hGUI1 & ' (' & WinGetTitle($hWnd) & ")" & @CRLF)

    [/autoit] [autoit][/autoit] [autoit]

    $hGUI2 = GUICreate("GUI2", 100, 100)
    GUISetState()
    ConsoleWrite("Fenster 2: " & $hGUI2 & ' (' & WinGetTitle($hWnd) & ")" & @CRLF)

    [/autoit] [autoit][/autoit] [autoit]

    GUIRegisterMsg($WM_ACTIVATEAPP, "_MY_WM_ACTIVATEAPP")

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _MY_WM_ACTIVATEAPP($hWnd, $uMsg, $wParam, $lParam)
    Switch $wParam
    Case True
    _GUICtrlListBox_AddString($hList, "Ein Fenster des Skripts wird aktiviert")
    ConsoleWrite("Skript-Fokusgewinn Gesendet von Fenster: " & $hWnd & ' (' & WinGetTitle($hWnd) & ")" & @CRLF)
    Case Else
    _GUICtrlListBox_AddString($hList, "Das Skript verliert das aktive Fenster")
    ConsoleWrite("Skript-Fokusverlust Gesendet von Fenster: " & $hWnd & ' (' & WinGetTitle($hWnd) & ")" & @CRLF)
    EndSwitch
    Return $GUI_RUNDEFMSG

    EndFunc

    [/autoit]