[R] Boucle de clic sur bouton existant ...
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Boucle de clic sur bouton existant ...
Bonsoir à tous,
Voilà,
Donc j'ai un petit probleme, c'est pour l'automatisation d'installation d'un logiciel... je dois attendre que l'installation doit etre fini pour que je puisse cliquer sur terminer je ne peu pas utilisé winwaitactive car c'est tjrs la mm fenêtre... je voudrai qu'il y est une boucle qui clic tjrs sur le bouton en question jusqua temp qu'il n'existe plus comment fair ?
ou une boucle du style si ce bouton exist cliquer et quitter la boucle temp que le bouton n'existe pas ne pas quitter la boucle...
j'esper que vous m'avez un peu compri merci de m'aider...
Voilà,
Donc j'ai un petit probleme, c'est pour l'automatisation d'installation d'un logiciel... je dois attendre que l'installation doit etre fini pour que je puisse cliquer sur terminer je ne peu pas utilisé winwaitactive car c'est tjrs la mm fenêtre... je voudrai qu'il y est une boucle qui clic tjrs sur le bouton en question jusqua temp qu'il n'existe plus comment fair ?
ou une boucle du style si ce bouton exist cliquer et quitter la boucle temp que le bouton n'existe pas ne pas quitter la boucle...
j'esper que vous m'avez un peu compri merci de m'aider...
Modifié en dernier par Yoyo86220 le jeu. 30 oct. 2008 20:24, modifié 2 fois.
- sylvanie
- Niveau 11
- Messages : 1556
- Enregistré le : jeu. 26 juil. 2007 21:31
- Localisation : Paris
- Status : Hors ligne
Re: [..] Boucle de clic sur bouton existant ...
Bonsoir,
1) récupérer l'id du bouton en question qui apparaît à la fin via Au3info
2) utiliser une boucle basée sur guictrlgetstate et la constante $GUI_SHOW qui indique si le bouton est visible.
cf un petit exple avec une gui rapide :
1) récupérer l'id du bouton en question qui apparaît à la fin via Au3info
2) utiliser une boucle basée sur guictrlgetstate et la constante $GUI_SHOW qui indique si le bouton est visible.
cf un petit exple avec une gui rapide :
► Afficher le texte
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Re: [..] Boucle de clic sur bouton existant ...
Je ne comprends pas bien l'exemple est t'il possible que vous me montrez avc 2 scripts différent un ou le bouton va aparaitre et l'autre qui doi cliquer sur le bouton dès sont arrivé...
- sylvanie
- Niveau 11
- Messages : 1556
- Enregistré le : jeu. 26 juil. 2007 21:31
- Localisation : Paris
- Status : Hors ligne
Re: [..] Boucle de clic sur bouton existant ...
On va procéder autrement car le fait de spliter en 2 programme ne changera pas des masses l'affaire : quelles sont les lignes non comprises ?
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Re: [..] Boucle de clic sur bouton existant ...
voila ce que je fais moi...
Code : Tout sélectionner
While 1
If BitAND(GUICtrlGetState(4015),$GUI_SHOW) Then ;<-- 4015 est l'ID du bouton
ControlClick("Adobe Photoshop CS2 - Installation","",4015)
ControlClick("Adobe Photoshop CS2 - Installation","",2003)
Exitloop
EndIf
WEnd
- sylvanie
- Niveau 11
- Messages : 1556
- Enregistré le : jeu. 26 juil. 2007 21:31
- Localisation : Paris
- Status : Hors ligne
Re: [..] Boucle de clic sur bouton existant ...
ça a l'air pas mal,
je metterait une tempo, sleep(100) entre les 2 controlclick
si ça ne marche toujours pas, il faudra strocker les retours de guictrlclick pour les consulter après via un msgbox ou un consolewrite :
Par contre, tu as bien vérifié que d'un lancement à l'autre de l'exe, photoshop ici, les id des bouton sont toujours les mêmes ?
je metterait une tempo, sleep(100) entre les 2 controlclick
si ça ne marche toujours pas, il faudra strocker les retours de guictrlclick pour les consulter après via un msgbox ou un consolewrite :
► Afficher le texte
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Re: [..] Boucle de clic sur bouton existant ...
oui ce sont tjrs les mm... mais il y a un truc qui me chiffonne il n'y a pas besoin de metre le titre de l'apli sur la quel on doit chercher? du mm style que "ControlClick"... ? car là ça ve dire que adméton qu'il est un autre programme d'ouvert avc les mm ID... hum... sa ne marchera point ! non ?
Re: [..] Boucle de clic sur bouton existant ...
j'ai trouvé une autre solution je pense...
esque ceci serai possible ?
enfin c'est sur que ça marche apres il me faut juste la commande qui représente ceci :
"Adobe Photoshop CS2 - Installation" n'est pas existante
Code : Tout sélectionner
While 1
ControlClick("Adobe Photoshop CS2 - Installation","",4015)
ControlClick("Adobe Photoshop CS2 - Installation","",2003)
If [color=#4000FF]"Adobe Photoshop CS2 - Installation" n'est pas existante[/color] Then Exitloop
WEnd
enfin c'est sur que ça marche apres il me faut juste la commande qui représente ceci :
"Adobe Photoshop CS2 - Installation" n'est pas existante
- sylvanie
- Niveau 11
- Messages : 1556
- Enregistré le : jeu. 26 juil. 2007 21:31
- Localisation : Paris
- Status : Hors ligne
Re: [..] Boucle de clic sur bouton existant ...
Les ID passez ici sont relatifs à une fenêtre. Donc effectivement, plusieurs fenêtres peuvent avoir des contrôles avec même ID, puisque c'est relatif. les Winhandle par contre sont unique, mais comme on ne va pas changer les prototypes des fonctions, le passage du titre de la fenêtre est obligatoire, même si on le résume à "", mais là c'est risqué en terme de résultatYoyo86220 a écrit :oui ce sont tjrs les mm... mais il y a un truc qui me chiffonne il n'y a pas besoin de metre le titre de l'apli sur la quel on doit chercher? du mm style que "ControlClick"... ? car là ça ve dire que adméton qu'il est un autre programme d'ouvert avc les mm ID... hum... sa ne marchera point ! non ?
Par contre, que retournent coomme valeur les controleclick (1=ok, 0 = NOK) ? ça nous permettrai de savoir si le click a eu vraiment lieu
Code : Tout sélectionner
If "Adobe Photoshop CS2 - Installation" n'est pas existante Then Exitloop
- 1 titre de fenêtre
- 1 label dans la fenêtre
- autres ?
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Re: [R] Boucle de clic sur bouton existant ...
Je suis débutant, donc pas sur que ça marche (je dis peut être n'apporte quoi), mais as-tu essayé avec:
Je penses que ça devrait aller.
Code : Tout sélectionner
If Not WinActive ("blablabla") Then WinActivate ("blablabla")
WinWaitActive("blablabla")