Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Click sur un objet externe a Panoramic | |
| | |
Auteur | Message |
---|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 10:11 | |
| Très bien klaus.
Comme je te disais précédemment :
- je peux sélectionner a la souris de gauche a droite en maintenant le bouton enfoncé.
- Un DOUBLE CLIC sélectionne le mot mais un TRIPLE CLIC ne permet pas la sélection complète du champ.
Est ce que cela te convient comme explication ou tu as besoin de plus ?
| |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 16:26 | |
| @Klaus :
J'ai fait une sélection auto qui permet lors d'un appui sur un bouton de déclencher la sélection et la copie d'un dizaine de champs avec l'importation dans le programme panoramic.
La chose bizarre c'est que je vois les champs passer en surlignage mais ils ne sont pas importés. J'ai mis des PAUSE 200 entre chaque actions.
Je fais la même chose pour importer depuis le bloc note ou sur une page internet au lieu de SIEBEL et là, aucun soucis tout est pris en compte.
Pourtant le CTRL+C manuel fonctionne dans SIEBEL !! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 18:23 | |
| Voici le code de la fonction MouseHighlight: - Code:
-
function MouseHighlight(xd,yd: integer):integer; stdcall; export; begin MyMouseEvent( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 ); MyMouseEvent( MOUSEEVENTF_MOVE, xd, yd, 0, 0 ); MyMouseEvent( MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 ); result := 0; end; Juste 3 lignes: 1. à la position actuelle, enfonce le bouton gauche de la souris et laisser enfoncé 2. décaler la souris horizontalement et/ou verticalement pour les valeurs xd, yd pixels 3. relâcher la souris C'est exactement l'action fait au clavier. Est-ce que tu constates que la zone est au moins partiellement surlignée ? | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 18:33 | |
| La zone est bien surligné comme je te le disais plus haut.
Par contre, je crois que le problème c'est le CTRL+C. Et pourtant en manuel ca marche... C'est la que je ne comprends pas. C'est pourquoi j'ai augmenté les PAUSE a 200.
Je verrai cela lundi maintenant car c'est le weekend et donc plus au boulot.
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 18:39 | |
| Donc, dans mon petit programme, c''est la ligne 49 avec SendSingleKey qui pose problème. Certainement la validité du handle. Je vais voir si je peux contourner cela. Mais si le texte est surligné, cela prouve que j'ai bien manoeuvré le curseur, et c'est déjà beaucoup. Patience... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 19:26 | |
| Une question complémentaire: si tu tentes de récupérer le contenu de l'URL, est-ce que ça marche ? Je pense que ça se passe sous IE, et ça devrait marcher... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 19:59 | |
| Recharge KGF.dll du WebDav (pas de changement de numéro de version). Et essaie le code suivant: - Code:
-
' test_recuperer_texte_autre_programme.bas
label touche dim txt$, res%, hnd%, x%, y%, s$
caption 0,"Récupération de textes" on_key_down 0,touche
alpha 1 : top 1,10 :left 1,10 : caption 1,"X:" edit 11 : top 11,10 : left 11,30 : width 11,40 : inactive 11 alpha 2 : top 2,10 :left 2,100 : caption 2,"Y:" edit 12 : top 12,10 : left 12,130 : width 12,40 : inactive 12 alpha 3 : top 3,10 :left 3,200 : caption 3,"Objet:" edit 13 : top 13,10 : left 13,250 : width 13,80 : inactive 13
alpha 5 : top 5,40 : left 5,10 : caption 5,"ESC=localiser A=capturer B=Surligner+capturer C=(B) pour Internet Explorer" memo 31 : top 31,70 : left 31,10 : width 31,400 : height 31,300 : bar_both 31 : inactive 31
dll_on "KGF.dll" ' res% = dll_call1("DebugKGF",2) : ' supprimer cette ligne après les tests !
end
touche: if key_down_code=27 : ' pour localiser la zone à capter res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%)) hnd% = dll_call2("GetObjectUnderPosition",x%,y%) text 11,str$(x%) text 12,str$(y%) text 13,str$(hnd%) return end_if if key_down_code=65 : ' pour capter la zone localisée par ctrl/A - ctrl/C res% = dll_call2("AbsoluteMouseLeftClick",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call5("SendSingleKey",hnd%,65,1,0,0) : ' ctrl/A res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C pause 200 : ' laisser le temps de la copie clear 31 item_add 31,clipboard_string_paste$ res% = dll_call1("BringWindowToForeground",handle(0)) return end_if if key_down_code=66 : ' pour capter la zone localisée par surligner - ctrl/C res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if : ' pour capter la zone localisée par surligner - copie spéciale IE if key_down_code=67 res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") res% = dll_call1("GetSelectedIEtext",adr(s$)) clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if return
Tu places le curseur sur le début du champ à capter, tu frappes Echap, puis la lettre C. Ca devrait marcher.
Dernière édition par Klaus le Sam 25 Oct 2014 - 0:35, édité 2 fois | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 20:17 | |
| Comme je te disais, je ne suis plus sur mon lieu de travail, donc je n'ai pasl'outil a porté de main... Mais je regarderai lundi.
Si tu veux voir comment j'ai mis en œuvre tes propositions regarde sur mon WEBDAV. Télécharge le dossier CREAFICHE et met tout ca sur la racine du C:
Ca me permet de mettre en œuvre les positions x, y des champs avec un test en import et export. Pour l'export ca fonctionne.
- Tu dois selectionner les champs a utiliser en cochant a droite pour activer - clique sur le bouton pour choisir une position - Pose la souris au bon endroit - appui sur une touche
Le tout est mémorisé automatiquement dans le fichier positions.txt sous forme de grid.
Pour le test appui sur le grand bouton en bas.
Dis moi ce que tu en penses....
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Ven 24 Oct 2014 - 23:55 | |
| J'ai testé ton programme selon le mode d'emploi que tu me donnes. Après quelques tâtonnements (parce que je voulais aller trop vite...), j'ai fait marcher le programme, sous Internet Explorer, sur une page du Formu Panoramic. Je peux récupérer le contenu des zones de saisie, sans problème. Ca marche bien.
Bravo pour la conception et la mise en page. Je pense qu'avec la modif que j'ai apportée dans le post précédent, tu devrais y arriver également pour Siebel. A moins qu'au niveau du Java-Script de la page, ils aient pris des mesures particulières pour prévenir justement cela. Ce n'est pas impossible.
EDIT
Je viens de modifier le code dans le post précédent, en donnant 3 possibilités de récupérer: A. par ctrl/A - ctrl/C B. par surlignage - ctrl/C C. par surlignage - copie spéciale Internet Explorer
C'est donc cette dernière possibilité qui est nouvelle et que je te suggère... | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 10:13 | |
| Bonjour tous le monde ! @Klaus, au secours... Je viens de charger ton code et la dernière version de KGF il y a quelques minutes. Et je m'aperçois que ca ne fonctionne pas avec la dernière fonction (C. par surlignage - copie spéciale Internet Explorer). J'ai essayé dans IE et dans les autres fenêtres mais rien n'apparait Est ce moi ou bien ??!!! - Citation :
- A moins qu'au niveau du Java-Script de la page, ils aient pris des mesures particulières pour prévenir justement cela. Ce n'est pas impossible.
Je pense aussi, mais alors comment expliquer que le glissé déplacé de la souris avec le CTRL+C en manuel fonctionne et pas en mode auto comme on le programme ? Y a t il une différence entre les deux ? As tu une explication ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 18:44 | |
| Pas vraiment. Essaie d'utiliser cela sur une page internet ne dépendant pas de Siebel. Ouvre une page internet qui contient une ou plusieurs zones de saisie (forum internet, page login avec zone identifiant, page recherche avec critère de recherche etc, une page de contact avec ses zones etc). Et essaie de récupérer ces informations de cette manière. C'est ce que j'ai fait pour tester cela dans Internet Explorer. Voici ce que ça donne avec la page de création d'un nouveau message, dans le forum Panoramic: Là, j'ai récupéré le texte du message. Mais ça marche de façon identique pour l'identifiant ou le titre. Je rappelle le mode opératoire: 1. placer le curseur au début de la zone à récupérer, sans cliquer 2. frapper Echap (ESC) 3. frapper la lettre C ==> le texte de la zone apparaît. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 19:32 | |
| Désolé Klaus. Mais ca ne marche pas chez moi même dans les pages internet...
Es tu sur que la dll est la bonne ? cela dit je n'ai pas de message d'erreur... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 20:03 | |
| A tout hasard, j'ai recopié KGF.dll dans le WebDav, dossier DLLs. Et voici le code du programme de test: - Code:
-
' test_recuperer_texte_autre_programme.bas
label touche dim txt$, res%, hnd%, x%, y%, s$
caption 0,"Récupération de textes" on_key_down 0,touche
alpha 1 : top 1,10 :left 1,10 : caption 1,"X:" edit 11 : top 11,10 : left 11,30 : width 11,40 : inactive 11 alpha 2 : top 2,10 :left 2,100 : caption 2,"Y:" edit 12 : top 12,10 : left 12,130 : width 12,40 : inactive 12 alpha 3 : top 3,10 :left 3,200 : caption 3,"Objet:" edit 13 : top 13,10 : left 13,250 : width 13,80 : inactive 13
alpha 5 : top 5,40 : left 5,10 : caption 5,"ESC=localiser A=capturer B=Surligner+capturer C=(B) pour Internet Explorer" memo 31 : top 31,70 : left 31,10 : width 31,400 : height 31,300 : bar_both 31 : inactive 31
dll_on "KGF.dll" ' res% = dll_call1("DebugKGF",2) : ' supprimer cette ligne après les tests !
end
touche: if key_down_code=27 : ' pour localiser la zone à capter res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%)) hnd% = dll_call2("GetObjectUnderPosition",x%,y%) text 11,str$(x%) text 12,str$(y%) text 13,str$(hnd%) return end_if if key_down_code=65 : ' pour capter la zone localisée par ctrl/A - ctrl/C res% = dll_call2("AbsoluteMouseLeftClick",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call5("SendSingleKey",hnd%,65,1,0,0) : ' ctrl/A res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C pause 200 : ' laisser le temps de la copie clear 31 item_add 31,clipboard_string_paste$ res% = dll_call1("BringWindowToForeground",handle(0)) return end_if if key_down_code=66 : ' pour capter la zone localisée par surligner - ctrl/C res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if : ' pour capter la zone localisée par surligner - copie spéciale IE if key_down_code=67 res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") res% = dll_call1("GetSelectedIEtext",adr(s$)) clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if return
Et voici le mode opératoire: 1. ouvrir Internet Explorer 2. naviguer jusqu'à la page web choisie, comme par exemple dans le forum Panoramic, la page de création d'un nouveau message 3. saisir des infos dans les zones identifiant, titre et message, SANS l'envoyer 4. lancer le code ci-dessus, et placer la fenêtre par-dessus celle d'Internet Explorer 5. placer le curseur au début de la zone à récupérer, sans cliquer 6. frapper Echap (ESC) 7. frapper la lettre C ==> le texte de la zone apparaît. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 20:57 | |
| Bonsoir Klaus ! Après vérification de différents paramétrages, ca fonctionne. Je ne comprends pas pourquoi cela bloqué ? J'ai quelques clics ou le positionnement n'est pas pris et reste sur le précèdent. Peut il y a voir un rapport entre les 200 pixels de : - Citation :
- res% = dll_call2("MouseHighlight",200,0)
Et les 3000 caractères de : - Citation :
- s$ = string$(3000," ")
res% = dll_call1("GetSelectedIEtext",adr(s$)) En tout cas encore merci pour cette avancée. J'ai mis en œuvre dans creafiche et copcol le programme qui gère la récupération et la gestion des importations. En espérant que cela fonctionne sur SIEBEL. On verra lundi... Encore un grand merci Klaus pour ton aide et le temps passé ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 21:22 | |
| - Citation :
- Peut il y a voir un rapport entre les 200 pixels de :
- Citation :
- res% = dll_call2("MouseHighlight",200,0)
La valeur 200 est choisie arbitrairement pour déterminer la distance horizontale du glissement de la souris en surlignage. Ce sont des pixels. Il faut évidemment adapter cela à tes besoins. Sur mon écran, cela correspond à 10 cm, environ. Mais ça dépend de l'écran. A expérimenter. - Citation :
- Et les 3000 caractères de :
- Citation :
- s$ = string$(3000," ")
res% = dll_call1("GetSelectedIEtext",adr(s$)) La valeur 3000 est lalongueur maximale des données attendues. Cela aussi est choisi arbitrairement. Si 3000 ne suffisent pas, tu mettre 10000, 130000 etc, selon tes besoins. Il faut juste donner une valeur pour réserver l'espace et l'initialiser par des blancs. Avec la DLL telle qu'elle est, et le code posté ci-dessus, je peux capter les 3 zones du formulaire de création de message du forum Panoramic, mais aussi d'autres zones... Mieux, je peux même capter me mot de passe saisi, sous les points qui s'affichent: y compris la faute de frappe dans le pseudo-mot de passe: pourledémoBien sûr, pour chaque capture d'un champ différent, il faut repartir au point (5) en plaçant le curseur au début de la nouvelle zone visée, puis (6) frapper Echap, puis (7) frapper C. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Sam 25 Oct 2014 - 21:39 | |
| Merci pour tes explications Klaus.
C'était pour mieux comprendre le fonctionnement de l'ensemble. C'est parfait.
| |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 14:50 | |
| Bonjour tout le monde,
Klaus, je ne suis pas passé par là ce matin par manque de temps. Désolé.
Bon, après quelques tests ça ne fonctionne pas. Mais c'est bizarre car ça fait bien le surlignage, mais c'est tout.
Et même en test sur la page du forum, rien de copié !!!
Le surlignage s'effectue toujours correctement et c'est tout, quelque soit la base: Page internet, éditeur Panoramic...
Je comprends pas ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 15:04 | |
| Pour que ça marche, il fait 3 conditions: - il faut que la page en question soit soit chargée dans Internet Explorer - il faut que ce soit un champ de saisie qui est visé (genre EDIT) - il faut utiliser Echap pour cibler le champ, puis la lettre C pour capter le contenu.
Pour Firefox: - charger la page dans Firefox - il faut que ce soit un champ de saisie qui est visé (genre EDIT) - il faut utiliser Echap pour cibler le champ, puis la lettre A pour capter le contenu.
EDIT 1
Sous Firefox, si tu fais la capture en-dehors d'une zone de saisie, tu captures en fait le texte de toute la page (par Echap puis A).
EDIT 2
La partie Internet Explorer (Echap suivi de la lettre C) marche même en-dehors d'une zone de saisie, dans n'importe quelle portion de la page. On récupère le texte tel qu'il est surligné. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 17:00 | |
| Oui je suis bien d'accord klaus.
Sauf que la cela ne fonctionne pas... | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 17:15 | |
| | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 17:15 | |
| J'ai essayé plein de choses différentes... Par contre j'ai eu a plusieurs reprises cette erreur : | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 17:27 | |
| Comment ça, "ça ne marche pas" ... Voici ce que j'obtiens: avec le curseur placé devant le mot "Langage" et avec le curseur placé au début de ton message Reprends KGF.dll sur le WebDav - tu as peut-être un problème de version. Ce n'est pas impossible. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 20:17 | |
| Je n'y comprends plus rien !!!
Je rentre chez moi et je refais je test qui pourtant fonctionnait ce matin avant de partir...
Et là, je n'ai que des plantages...
Entre temps j'ai rechargé la DLL a plusieurs reprises. c'est les seuls changements. Mais rien n'y fait.
Je me demande d'où vient cette instabilité et ces messages d'erreur sur KGF ??
As tu une idée sur les messages d'erreurs ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Click sur un objet externe a Panoramic Lun 27 Oct 2014 - 20:58 | |
| Non. Pas d'idée par rapport à cela. Il y a encore des instabilités (moins, toutefois) avsc Synedit_Editor, mais pas avec ces fonctions. Et je viens de mettre une nouvelle fonction en ligne (et oui, il faut recharger la DLL, désolé). C'est GetSelectedText qui marche pour tout programme, que ce soit un programme Windows local, ou n'importe quel browser comme Internet Explorer, Firefox, etc. Voici ma petite démo adaptée: - Code:
-
' test_recuperer_texte_autre_programme.bas
label touche dim txt$, res%, hnd%, x%, y%, s$
caption 0,"Récupération de textes" on_key_down 0,touche
alpha 1 : top 1,10 :left 1,10 : caption 1,"X:" edit 11 : top 11,10 : left 11,30 : width 11,40 : inactive 11 alpha 2 : top 2,10 :left 2,100 : caption 2,"Y:" edit 12 : top 12,10 : left 12,130 : width 12,40 : inactive 12 alpha 3 : top 3,10 :left 3,200 : caption 3,"Objet:" edit 13 : top 13,10 : left 13,250 : width 13,80 : inactive 13
alpha 5 : top 5,40 : left 5,10 : caption 5,"ESC=localiser A=capturer B=Surligner+capturer C=(B) pour Internet Explorer" memo 31 : top 31,70 : left 31,10 : width 31,400 : height 31,300 : bar_both 31 : inactive 31
dll_on "KGF.dll" ' res% = dll_call1("DebugKGF",2) : ' supprimer cette ligne après les tests !
end
touche: if key_down_code=27 : ' pour localiser la zone à capter res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%)) hnd% = dll_call2("GetObjectUnderPosition",x%,y%) text 11,str$(x%) text 12,str$(y%) text 13,str$(hnd%) return end_if if key_down_code=65 : ' pour capter la zone localisée par ctrl/A - ctrl/C res% = dll_call2("AbsoluteMouseLeftClick",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call5("SendSingleKey",hnd%,65,1,0,0) : ' ctrl/A res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C pause 200 : ' laisser le temps de la copie clear 31 item_add 31,clipboard_string_paste$ res% = dll_call1("BringWindowToForeground",handle(0)) return end_if if key_down_code=66 : ' pour capter la zone localisée par surligner - ctrl/C res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") res% = dll_call5("SendSingleKey",hnd%,67,1,0,0) : ' ctrl/C clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if : ' pour capter la zone localisée par surligner - copie spéciale IE if key_down_code=67 res% = dll_call1("BringWindowToForeground",hnd%) res% = dll_call2("AbsoluteMousePosition",x%,y%) pause 100 : ' laisser le temps de l'affichage res% = dll_call2("MouseHighlight",200,0) pause 100 : ' laisser le temps de l'affichage s$ = string$(3000," ") ' res% = dll_call1("GetSelectedIEtext",adr(s$)) res% = dll_call1("GetSelectedText",adr(s$)) clear 31 item_add 31,trim$(s$) res% = dll_call1("BringWindowToForeground",handle(0)) end_if return
La touche Echap sert comme avant à localiser le champ, et la touche C fait la copie, quelque soit la cible. C'est bien plus simple comme ça. | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Click sur un objet externe a Panoramic Mar 28 Oct 2014 - 7:55 | |
| Merci Klaus !
Je test ce matin... | |
| | | Contenu sponsorisé
| Sujet: Re: Click sur un objet externe a Panoramic | |
| |
| | | | Click sur un objet externe a Panoramic | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |