Meldung bei Änderung des Fensters im Fordergrund



  • Hallo, wie kann ich feststellen ob das Fenster das sich im Vordergrund befindet, sich ändert? Z.B. wenn ein neues Fenster aufpoppt und sich nun im Vordergrund befindet?

    Mfg Felsen



  • WM_SETFOCUS? GetForeGroundWindow?



  • Ich will informiert werden wenn ein neues Fenster im Vordergrund aufpoppt und nicht dessen Handle ermitteln.

    Mfg Felsen



  • Ich würd's so machen:

    - GetForegroundWindow ()
    - Fenstertext checken (GetWindowText()) als auch zugehörigen Thread/Prozess (GetWindowThreadProcessId())
    - Wenn du GetForegroundWindow() nochmals aufrufst und dann andere Daten erhältst, so handelt sich um ein anderes Fenster
    

    k.A.... nur mal so als Vorschlag.
    Wenn du mir verraten willst wozu du das brauchst, dann kann ich dir vielleicht weiterhelfen. Meistens gibt's elegantere Lösungen für solche Problemchen.
    Aber egal. Liegt bei dir.

    Schönen Abend noch
    Greetz,
    Xzi-bit



  • Xzibit schrieb:

    Ich würd's so machen:

    - GetForegroundWindow ()
    - Fenstertext checken (GetWindowText()) als auch zugehörigen Thread/Prozess (GetWindowThreadProcessId())
    - Wenn du GetForegroundWindow() nochmals aufrufst und dann andere Daten erhältst, so handelt sich um ein anderes Fenster
    

    k.A.... nur mal so als Vorschlag.
    Wenn du mir verraten willst wozu du das brauchst, dann kann ich dir vielleicht weiterhelfen. Meistens gibt's elegantere Lösungen für solche Problemchen.
    Aber egal. Liegt bei dir.

    Schönen Abend noch
    Greetz,
    Xzi-bit

    persönlich habe ich das genau so gemacht,

    interessiere mich aber ebenfalls ob es noch anders geht.



  • Man könnte noch einen globalen Hook anbringen und auf WM_ACTIVATE (oder so) reagieren.


Anmelden zum Antworten