Page 1 sur 1

[R] Revenir à la dernière fenetre active

Posté : mar. 28 avr. 2009 14:47
par erkyl
Bonjour à tous.

Voilà je vous explique ce que je veux faire, c'est très simple. Ce que je veux c'est activer une fenètre, faire un clik dessus, revenir à la fenètre sur laquelle j'étais précédement, attendre 1 minute et recommencer tant que je n'appuie pas sur escape.

Activer une fenètre, cliquer, ça va, je l'ai fait avec Au3Recorder. Faire une boucle qui relance le processus toutes les minutes, je pense qu'elle est bonne.

Mon souci, c'est pour revenir à la fenetre précédente. Je pensais tout simplement faire un Alt + Tab, mais bon, ça ne marche pas... Voilà ce que j'ai fait:

Code : Tout sélectionner

Opt("WinWaitDelay",100)
Opt("WinTitleMatchMode",4)
Opt("WinDetectHiddenText",1)
Opt("MouseCoordMode",0)
HotKeySet("{ESC}", "_exit")

Func _exit()
    Exit
EndFunc   ;==>_exit

while 1 ;boucle perpétuelle
    
    ;activer le fenetre
    WinWait("google - Mozilla Firefox","")
    If Not WinActive("google - Mozilla Firefox","") Then WinActivate("google - Mozilla Firefox","")
    WinWaitActive("google - Mozilla Firefox","")
    
    ;cliquer
    MouseMove(324,452)
    MouseDown("left")
    MouseUp("left")

    ;revenir à fenetre précédente
    Send("^+{TAB}")

    ;attendre une minute
    sleep(60000)

WEnd
Savez vous pourquoi mon Send("^+{TAB}") ne marche pas?

Merci d'avance!

Re: [..] Revenir à la dernière fenetre active

Posté : mar. 28 avr. 2009 15:14
par GaRydelaMer
Bonjour

plutôt que de vouloir faire un Alt+Tab, sauvegarde dans une variable la fenêtre active avant le while par exemple et tu restaure cette fenêtre après ton traitement.

$oldWindows = WinGetTitle("[ACTIVE]", "") ; enregistre la fenêtre active

WinSetState($oldWindows ,"" , @SW_SHOW) ; pour la restaurer

PS: tu peux aussi enregistrer la fenêtre courante dans le while avant le traitement si des fois l'utilisateur du PC à changer de fenêtre durant la pseudo pause de 1 minute.

Re: [..] Revenir à la dernière fenetre active

Posté : mar. 28 avr. 2009 15:43
par erkyl
Génial, merci, une idée de pourquoi ça ne marchait pas avec ma méthode?

Re: [RE] Revenir à la dernière fenetre active

Posté : mar. 28 avr. 2009 15:48
par GaRydelaMer
non aucune idée je manipule pas de fenêtre dans mes projet.

La syntaxe du alt+tab certainement car c'est très certainement possible mais d'autres pourront surement répondre.

Mais comme tu vois à 1 pb plusieurs solutions ;)