Page 1 sur 2
[...] Fonction MouseWheel sur pc portable
Posté : jeu. 03 oct. 2013 18:02
par Sydneysyd
Bonjour à tous,
Une petite question,
La fonction MouseWheel est-elle fonctionnelle sur un pc portable qui n'aurait pas de souris ?
Je voudrais automatiser l'installation d'Hyperfile de Windev, et je suis bloqué, car il faut que je descende l'ascenseur pour dégriser le bouton accepter.
Voici mon code :
► Afficher le texte
Traytip ("Informations", "Préparation de l'installation...", 200)
sleep(1000)
;creation d'un dossier temporaire où tous les éléments seront décompressés
DirCreate(@tempdir & "\HOL\")
;copie des fichiers dans le dossier temporaire
FileInstall("C:\Users\test\Desktop\C.A.S.P.E.R\HOL_MANAGER_1_2F.exe", @tempdir & "\HOL\HOL_MANAGER_1_2F.exe", 1)
FileInstall("C:\Users\test\Desktop\C.A.S.P.E.R\WX160PACKHFSQLCS056f.exe", @tempdir & "\HOL\WX160PACKHFSQLCS056f.exe", 1)
;Démarrage de l'installation du centre de controle
Traytip ("Lancement du CCHF", "Don't touch ! ", 1000)
Run(@tempdir & "\HOL\WX160PACKHFSQLCS056f.exe")
WinWaitActive ( "Archive Autoextractible PC SOFT" )
send ("{ENTER}")
WinWaitActive ("PC PSOFT - HyperFileSQL Client/Serveur")
MouseWheel ("down", 10)
Je pense que je ne me trompe pas dans le WinWaitActive pour le lancement de l'hyperfile après extraction (j'ai regardé dans les processus pour avoir le bon nom).
Mais le déroulement ne se fait pas au moment de l'ouverture de la fenetre.
Pour le logiciel Manager, je ne peux le fournir (dû à mon travail), pour le centre de controle, dispo en FTP sur le site de PC Soft
http://www.mmnt.net/db/0/0/ftp.pcsoft.f ... /fr/commun
Merci d'avance, pour votre aide.
Re: [...] Fonction MouseWheel sur pc portable
Posté : jeu. 03 oct. 2013 21:59
par lesolutionneur
Pourquoi ne pas tout simplement forcer le bouton à se dégriser puis appuyer dessus ?
Re: [...] Fonction MouseWheel sur pc portable
Posté : jeu. 03 oct. 2013 22:18
par jguinch
Je suis d'accord avec lesolutionneur.
Tu peux également essayer d'envoyer la séquence de touche CTRL+FIN dans la zone de texte...
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 06:27
par Sydneysyd
Pour le ctrl + fin je n'y avais pas pensé...
Par contre, comment je peux forcer à dégriser autrement ?
Comment je peux être sur que ma commande WinWaitActive est juste ? J'ai l'impression qu'il n'en tient pas compte.
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 07:24
par Sydneysyd
Bad news...
C'est pas le WinWait qui ne fonctionne pas mais en fait , dès l'instant où l'on se trouve sur le tableau, le pagedown ne fonctionne pas, ni d'autres commandes.
Les commandes, ne fonctionne que si je clique dans la zone de texte, or, vu que c'est pour des installations sur des postes différents et donc de tailles d'ecran different, je suis contraint de retirer l'option MouseClick.
Comment je peux rentrer dans la zone de texte dans ce cas ?
Ou comment je peux contourner le problème ?
Merci d'avance,
Cdt
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 08:45
par jguinch
Regarde du côté de ControlFocus et ControlSend.
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 10:31
par Sydneysyd
Merci pour ta réponse.
Je regarde la commande controlfocus et dans les controles, je pense que celui qui conviendrait serait :
TEXT - The text on a control, for example "&Next" on a button
Mais si ce next est grisé, il le prendra en compte ?
Au niveau des controlID, comment je peux connaitre l'ID ?
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 10:39
par Sydneysyd
Bon, j'ai tenté ceci
► Afficher le texte
WinWaitActive ("PC PSOFT - HyperFileSQL Client/Serveur")
ControlSend("[CLASS:PC PSOFT - HyperFileSQL Client/Serveur]", "", "Edit1", "")
Send ("{PGDN}")
Send ("{PGDN}")
Send ("{PGDN}")
Send ("{PGDN}")
Send ("{PGDN}")
Send ("{PGDN}")
Mais cela ne me met pas en clic dans les conditions d'utilisation afin de pouvoir descendre le texte à lire avec l'ascenseur par pagedown.
Avez vous une idée ?
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 14:49
par jguinch
Tu peux essayer ça :
► Afficher le texte
ControlFocus("[CLASS:PC PSOFT - HyperFileSQL Client/Serveur]", "", "Edit1")
ControlSend("[CLASS:PC PSOFT - HyperFileSQL Client/Serveur]", "", "Edit1", "^{END}")
Sinon, pour dégriser un bouton, ControlEnable
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 15:36
par Sydneysyd
Merci, je teste et je fais un retour.
Par contre pour le controlenable comment je peux connaitre l'ID ?
Je n'ai jamais utilisé cette commande, et l'idée me parait bien, mais comment connaitre l'ID ?
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 15:41
par jguinch
En utilisant AutoIt Window Info
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 16:02
par Sydneysyd
Bon après test le code que tu m'a fourni ne fonctionne pas...
Reste à dégriser le bouton, mais je ne connais pas la méthode pour connaitre l'ID
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 16:16
par jguinch
Sydneysyd a écrit :je ne connais pas la méthode pour connaitre l'ID
Je viens de te le dire !
Re: [...] Fonction MouseWheel sur pc portable
Posté : ven. 04 oct. 2013 22:07
par Sydneysyd
J'avais pas vu ton post...
oups...
J'ai testé avec, et j'ai donc Class, bouton1, donc même grisé cela devrait fonctionner ?
Je teste et je vous dis ca
^^
Re: [...] Fonction MouseWheel sur pc portable
Posté : sam. 05 oct. 2013 01:00
par Sydneysyd
Ca y est je suis perdu dans les commandes.
Je pense avoir trouvé ce que je veux, mais je n'arrive pas à le mettre en place
Je pense que c'est un controlclik qu'il me faudrait.
Basic Windows Info
Title : PC PSOFT - HyperFileSQL Client/Serveur
Class: WinDevObject
Basic Control Info
Class : RICHEDIT50W
Instance : 1
J'ai mis cela, mais ca ne fonctionne pas
ControlClick ("PC PSOFT - HyperFileSQL Client/Serveur", "WinDevObject", 1, 1)
Mais bon je pense que je suis en train de faire n'importe quoi...
J'ai pris l'onglet Toolbar du Au3 Info, ai-je bien fait ?
Re: [...] Fonction MouseWheel sur pc portable
Posté : sam. 05 oct. 2013 12:12
par Rancar
Coucou,
Pour connaître l'ID de ton contrôle, tu dois te rendre dans l'onglet "Control" d'AutoIT Window Info. Ensuite tu as l'ID du contrôle sur la ligne "ID"

Re: [...] Fonction MouseWheel sur pc portable
Posté : sam. 05 oct. 2013 17:04
par Sydneysyd
Merci pour l'info mais bad news pas d'ID pour l'instance RICHEDIT50W...
Donc quelle solution autre, puis-je trouver ?
Un msgbox, qui lorsque l'on clique sur OK permettra de passer à l'etape suivante ?
Mais je ne vois pas trop comment placer mon if, then, else.
Re: [...] Fonction MouseWheel sur pc portable
Posté : mar. 08 oct. 2013 16:52
par Sydneysyd
Bonjour,
Je me permet de faire un petit up pour savoir si quelqu'un aurait une solution adéquate...
Re: [...] Fonction MouseWheel sur pc portable
Posté : mar. 08 oct. 2013 18:58
par TopXm
Hello
A tout hazard :
Code : Tout sélectionner
ControlClick("PC PSOFT - HyperFileSQL Client/Serveur", "", "[CLASS:RICHEDIT50W; INSTANCE:1]")
Je viens d'essayer sur un contrôle RichEdit ça a fonctionné. Bon après je ne te promets rien ...
Re: [...] Fonction MouseWheel sur pc portable
Posté : mer. 09 oct. 2013 07:23
par Sydneysyd
Salut,
Merci pour ton aide, merci ca ne marche pas...
snif
Je pensais peut-être à l'utilisateur de faire descendre la barre, puis de cliquez sur OK, dans une boite de dialogue que j'aurais crée.
Ce qui me gene, c'est que je ne vois pas comment coder de façon à ce que l'on dise que tant que l'on a pas cliqué sur OK on ne continue pas le script.