Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Transmission d'un clic à une fenêtre non Panoramic. Jeu 10 Sep 2015 - 16:22 | |
| Bonjour.
@Klaus.
Je me demandais s'il était possible de simuler un clic gauche sur la fenêtre d'une application non Panoramic, puis de récupérer le texte s'y trouvant, en simulant CTRL A, puis CTRL C.
Merci de ton aide. | |
|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. Jeu 10 Sep 2015 - 18:13 | |
| Oui.
Regarde l'aide de KGF.dll: - section "Gestion de la souris", tu as tout ce qu'il faut pour cliquer n'importe où. - section "Envoi de touches", tu as ce qu'il faut pour envoyer ctrl/A, ctrl.C. - section "Fonctions de gestion de fenêtres", tu as ce qu'il faut pour trouver le handle de l'objet sur lequel le curseur est positionné - section "Fonctions diverses", tu as une fonction qui sélectionne tout le texte d'un objet et le copie dans le presse-papier
D'autres fonctions seront peut-être utiles. En tout cas, il y a ce qu'il faut pour faire ce que tu veux faire. | |
|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Transmission d'un clic à une fenêtre non Panoramic. Jeu 10 Sep 2015 - 18:53 | |
| Bonjour.
Merci Klaus, je vais donc exploiter à fond ces possibilités. | |
|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 10:48 | |
| Oui je confirme ! Ca fonctionne parfaitement. J'utilise le principe des dizaines de fois chaque jour sans problèmes. Il faut juste bien prévoir les positionnements des applications sur l'écran. Tu peux même faire de la saisie a la volée en prévoyant le déplacement et les variables correspondantes. Il faut juste prévoir une pause de quelques millisecondes entre chaque et c'est tout ! | |
|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 15:43 | |
| Bonjour. J'utilise régulièrement le logiciel Ultralingua, téléchargeable ici: http://www.toucharger.com/fiches/windows/ultralingua-dictionnaire-francais-anglais/2383.htmMon but étant de récupérer, par programme, les différentes traductions d'un mot français en anglais. Voici mon code. Je ne parviens cependant pas à transmettre un mot à l'application, puis récupérer ses traductions. L'un d'entre vous pourrait-il me venir en aide ? Merci d'avance. - Code:
-
dim a$, b$, hnd%, res%, car$, mot$, mot_precedent$, txt$, titre$, true%, i%, c%, j% true%=1
dll_on "kgf"
file_open_read 1,"dico_français_espagnol.txt" file_open_write 2,"c:\a\dico_ultralingua.txt"
while file_eof(1)<>1 j%=j%+1 if j%=2 then exit_while caption 0,str$(j%) ' file_readln 1,txt$ if txt$="ZZZ" then exit_for
txt$="souris;"
if instr(txt$,";locut;")=0 mot$=left$(txt$,instr(txt$,";")-1) if mot$<>mot_precedent$ caption 0,mot$+" ("+str$(j%)+")" a$="àçéèêëîïôöûü" b$="aceeeeiioouu" for c%=1 to len(a$) while true%=1 i%=instr(mot$,mid$(a$,c%,1)) if i%=0 then exit_while mot$=left$(mot$,i%-1)+mid$(b$,c%,1)+right_pos$(mot$,i%+1) end_while next c% mot_precedent$=mot$ titre$="Ultralingua" hnd%=dll_call2("GetWindowByTitle",1,adr(titre$))
for i%=1 to len(mot$) res%=dll_call5("SendSingleKey",hnd%,asc(upper$(mid$(mot$,i%,1))),0,0,0) next i%
' Positionne la souris à l'intérieur de la fenêtre Ultralingua des traductions, et provoque un clic gauche. ' La fenêtre globale devant être positionnée correctement avant. res%=dll_call2("MouseLeftClick",400,300)
res%=dll_call5("SendSingleKey",hnd%,13,0,0,0) : ' Entrée wait 200
res%=dll_call5("SendSingleKey",hnd%,65,1,0,0) : ' envoyer ctrl/A res%=dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' envoyer ctrl/C ' wait 200 txt$=clipboard_string_paste$ ' message "'"+txt$+"'" if len(txt$)>0 ' file_writeln 2,"("+mot$+")" file_writeln 2,txt$ txt$="" file_writeln 2,txt$ file_writeln 2,"" clipboard_string_copy txt$ wait 200 end_if end_if end_if end_while
file_close 1 file_close 2
dll_off
terminate | |
|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 18:24 | |
| Salut Pedro Alvarez Tu dois procéder en plusieurs étapes : 1) Copier le ou les mots en français de panoramic dans le presse papier (fonction de panoramic) 2) envoyer ton presse papier vers une zone écran du logiciel (La phrase en francais). 3) Appliquer le clic sur le bouton traduction du logiciel. 4) récupérer la traduction dans le logiciel ( a mettre dans une variable Panoramic) 5) enregistrer cette variables selon ton choix dans Panoramic. j'espere que je suis assez clair... | |
|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 18:27 | |
| tu trouvera de l'aide ici
Dernière édition par Minibug le Ven 11 Sep 2015 - 18:38, édité 1 fois | |
|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 18:29 | |
| Bonjour.
Désolé, mais cela ne fonctionne pas. As-tu réellement testé la méthode après avoir installé Ultralingua ?
Merci de la suite. | |
|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. Ven 11 Sep 2015 - 18:35 | |
| Non , désolé je ne souhaites pas installer plein d'applications sur mon PC J'au eu assez de déboires ces derniers temps avec Windows... reprends le post précédent et tu trouvera un lien de plusieurs pages ou Klaus a testé différentes solution de saisie et de récupération de données externes a Panoramic Cela fonctionne je te le promet. C'est vrai qu'il faut prévoir des ajustements dans les positionnements et les temps de pause entre les copier, coller, clic, etc... En général un PAUSE 200 suffit. | |
|
Contenu sponsorisé
| Sujet: Re: Transmission d'un clic à une fenêtre non Panoramic. | |
| |
|