Page 1 sur 1
[..] Script pour cliquer automatiquement sur 3 boutons
Posté : mer. 03 déc. 2008 14:02
par Mathi
Bonjour à tous,
Je suis un novice dans l'utilisation d'autoit et j'ai donc un peu de mal pour créer un petit script. J'utilise un programme très simple (WinMAX32 de datamars) me permettant de récupérer le numéro de série d'un transpondeur. Afin d'exporter ce numéro de série dans un fichier .txt, il est nécessaire de cliquer sur un bouton "décharger" et un bouton "enregistrer". Je voudrais donc que ces deux boutons soient actionnés automatiquement l'un après l'autre lorsqu'un transpondeur est détecté.
Par la suite, une fois que le numéro est enregistré dans le fichier .txt, il faudrait qu'un troisième bouton "effacer la mémoire" soit actionné afin de remettre la mémoire du lecteur à 0.
Voir les images
Pourriez-vous m'aider?
Merci beaucoup
Re: Script pour cliquer automatiquement sur 3 boutons
Posté : mer. 03 déc. 2008 20:43
par jl56
bonjour
pour un script equivalent j'ai utilisez la commande send
avec ce genre de manip il vaut mieux utiliser des séquences de touches
le déplacement de la souris ce n'est pas fiable
exemple dans ton cas
attention je me base sur tes copies d'ecran
et je ne peut pas tester, n'ayant pas l'application
vérifie tout point par point
je ne suis par sur de la commande
winativate essai la isolement
► Afficher le texte
Code : Tout sélectionner
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=F:\pi\TRANSPONDEUR.kxf
$Form2 = GUICreate("Form", 600, 368, 192, 124)
GUISetBkColor(0x316AC5)
$TRANSFERT = GUICtrlCreateButton("TRANSFERT TRANSPONDEUR VERS FICHIER .TXT", 40, 112, 489, 49, 0)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlSetBkColor(-1, 0x00FF00)
$QUITTER = GUICtrlCreateButton("QUITTER", 360, 200, 177, 57, 0)
GUICtrlSetFont(-1, 18, 800, 0, "MS Sans Serif")
GUICtrlSetBkColor(-1, 0xFF0000)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$msg = GUIGetMsg()
select
Case $msg = $GUI_EVENT_CLOSE or $msg=$quitter
Exit
case $msg=$TRANSFERT
;ici j'active la fenetre de votre programme precedement lancer
WinActivate("[TITLE:Windown Link pour IsoMax Vers.fr.04]", "")
;~ pause de 100 milisecondes
if WinActive("Windown Link pour IsoMax Vers.fr.04", "") then
;~ decharger
send("{ALT}D")
;~ pause de 100 milisecondes
sleep (100)
;~ enregistrer
send("{ALT}E")
;~ pause de 100 milisecondes
sleep (100)
;~ ici je suppose que c'est passé dans notepad donc je le quitte
send("{ALT}FQ")
;~ pause
sleep (1000)
;~ effacer la memoire
send("{ALT}m")
EndIf
EndSelect
WEnd
cela reste un exemple entraine toi avec notepad
a+ jl56
Re: [..] Script pour cliquer automatiquement sur 3 boutons
Posté : jeu. 04 déc. 2008 00:35
par Mathi
Merci beaucoup pour la réponse si rapide! Je vais tester ça demain matin. Cependant, je remarque qu'il faut appuyer sur un bouton: "envoyer vers fichier texte" afin d'effectuer le transfert. Pensez-vous qu'il serait même possible d'automatiser ce bouton également? J'entends par la que le transfert vers le fichier texte s'effectue automatiquement sans avoir à pousser sur un quelconque bouton?
Merci d'avance
Re: [..] Script pour cliquer automatiquement sur 3 boutons
Posté : jeu. 04 déc. 2008 08:02
par jl56
bonjour
c'est le nom que j'ai donné au bouton pour lancer tout le process
une fois que tu as lancé ton appli, tu cliques dessus pour réaliser les opérations que tu as décrites
j'ai modifier le code ce matin
j'ai ajouté une condition, si la fenetre est active alors j'execute la séquence ....
encore une fois je ne peut pas tester le scripts
je ne sais pas ce que tu fais du .txt (stock ,impression etc...)
ce script est un exemple, une base de travail que toi seul peut finir
avant d'utiliser ce script cherche à comprendre tout le process
a+ JL56