Page 1 sur 1

[R] Ecrire dans une fenêtre windows qui n'a pas le focus  

Posté : jeu. 08 mai 2008 12:52
par sebnantes
Bonjour la compagnie ! J'ai besoin d'aide !
J'ai un programme qui affiche de temps en temps un popup.
Mon programme attend une saisie texte et une validation dans ce popup pour le fermer.
J'aimerai automatiser la saisie d'un texte dans ce popup et valider quand il apparait.
J'ai don fait :

Code : Tout sélectionner

while (1)
WinWait("popup")
Send("bonjour{ENTER}")
Wend
 
ca marche, seul problème ce popup est parfois masqué par d'autre fenêtre qui s'ouvre.
Est-il possible d'écrire dans ce popup même s'il se retrouve en attente en arrière plan ?
En évitant de lui donner le focus si possible.

Merci beaucoup.

Ps : ou retrouver ces message sauvegardés mais non envoyé ?

Re: écrire dans une fenetre windows qui n'a pas le focus

Posté : jeu. 08 mai 2008 17:46
par Tlem
http://autoitscript.fr/forum/viewtopic.php?f=3&t=595
Merci.

Utilisez WinExists pour détecter la présence de la fenêtre.
Mettez là en premier plan, puis envoyez vos commandes.

Sinon utilisez la commande ControlSend (Plusieurs post sur le sujet ont déjà été traités.
sebnantes a écrit :Ps : ou retrouver ces message sauvegardés mais non envoyé ?
Que voulez-vous dire ?

[R] écrire dans une fenêtre windows qui n'a pas le focus

Posté : jeu. 08 mai 2008 21:50
par sebnantes
Merci pour la réponse et c'est noté pour [..] et [R]

Ne souhaitant pas donner le focus à mon popup, je vais essayé ControlSend.
J'ai trouvé d'autre post à ce sujet et l'aide de la doc AutoIt

Sur mon popup, je peux voir qu'il s'agit aussi de Edit1 grâce à Au3Info.exe, donc :

Code : Tout sélectionner

ControlSend("popup", "", "Edit1", "Bonjour")


j'ai testé avec controlsend : parfait !
même quand mon popup se retrouve en arrière plan, BONJOUR est saisie dedans !

Encore merci et très bonne soirée.

Ps : Pour l'histoire du message sauvegardé, lorsqu'on écrit un message, il y a un bouton Aperçu, Envoyer, Sauvegarder et Annuler. Je pensais que sauvegardé signifiait Brouillon pour reprendre l'écriture plus tard.

Re: [..] écrire dans une fenêtre windows qui n'a pas le focus

Posté : jeu. 08 mai 2008 21:57
par Tlem
sebnantes a écrit :Ps : Pour l'histoire du message sauvegardé, lorsqu'on écrit un message, il y a un bouton Aperçu, Envoyer, Sauvegarder et Annuler. Je pensais que sauvegardé signifiait Brouillon pour reprendre l'écriture plus tard.
C'est tout à fait ça, et lorsque vous faites cela le brouillon se trouve dans le panneau de l'utilisateur.
Vous n'avez qu'à le compléter puis le valiser.