Autoit Info "Nachmache"

  • Hallo,
    ich versuche gerade etwas eigenes zu machen um herauszufinden welches Control aus irgendeinem Fenster als letztes geklickt wurde. Mir fehlt da leider der Ansatz. Geht das irgendwie mit Autoit? Wenn nein, weiß jemand wie es mit C++ geht?

    Super wenn ihr mir helfen könntet.
    Danke!

    Einmal editiert, zuletzt von TheShadowAE (17. November 2010 um 14:08)

  • Aus der Hilfe

    ControlGetFocus
    Gibt den Klassennamen des Controls zurück, das den (Eingabe-) Fokus in einem bestimmten Fenster hat.

    Parameter:
    ControlGetFocus ( "title" [, "text"] )

    Erfolg: Gibt den ClassNameNN (Klassennamen) des Controls zurück, das den (Eingabe-) Fokus in dem angegebenen Fenster hat.
    Fehler: Gibt "" (einen leeren String) zurück und setzt @error auf 1, wenn das Fenster nicht gefunden wurde.

    [autoit]

    $PID = Run("notepad.exe") ; Notepad-Fenster öffnen

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

    WinWaitActive("[CLASS:Notepad]", "", 3) ; Diese Zeile auskommentieren, um einen Fehler zu provozieren (wenn kein anderes Notepad-Fenster geöffnet ist)

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

    $a = ControlGetFocus("[CLASS:Notepad]") ; Aktives Control des Notepad-Fensters ermitteln
    MsgBox(262144, 'ControlGetFocus', 'CLassNameNN: ' & $a & @CRLF & '@error = ' & @error) ; Anzeige der Controlklasse und des Fehlercodes

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

    ProcessClose($PID) ; Vom Skript geöffnetes Notepad-Fenster wieder schließen

    [/autoit]

    MfG, Understood. ;)