J'ai enfin trouvé comment ouvrir la fenêtre "Rechercher un mot dans la
page" lorsqu'on utilise le webbrowser IE
C'est tellement simple que s'en est risible :
Il faut ...
-1- cliquer sur le champ de l'activex
-2- appuyer sur les touches de fonction CTRL + F
... et la fenêtre Rechercher s'ouvre et s'utilise comme avec Internet
Explorer
Si on ne clique pas d'abord sur le champ activex la fenêtre ne s'ouvre
pas.
Donc dans un bouton je veux simuler ces 2 opérations de la façon
suivante :
// je veux simuler le clic sur le champ activex qui s'appelle
HTML_EXPLORER
SendMessage (Handle(HTML_EXPLORER), 513, 400, 400)
SendMessage (Handle(HTML_EXPLORER), 514, 400, 400)
// je simule l'appui sur les touche CTRL+F
EnvoieTouche("^f",Handle(HTML_EXPLORER))
Malheureusement la simulation du clic ne fonctionne pas : je suis
obligé de cliquer sur l'activex pour que la fenêtre Rechercher s'ouvre
Que manque-t-il pour que la simulation du clic fonctionne réellement ?
J'ai rencontre le meme pb mais sur un champ html, il te suffit de simuler le clic sur ton champ ou composant et le tour est joue!
************* //Permet de simuler un clic gauche dans le champ html pour l'obliger a prendre le focus!!!
//position du curseur nPos,nPosX,nPosY sont des entiers nPos = CurseurPos(cpClient) nPosX = PoidsFaible(nPos) nPosY = PoidsFort(nPos) EnvoieTouche("{BTNGAUCHE,"+NumériqueVersChaine(nPosX,"d")+","+Numérique VersChaine(nPosY,"d")+"}",Handle(HTML1)) CurseurPos(cpClient,nPosX,nPosY)
// je lance l'ouverture de la fenetre IE de recherche EnvoieTouche("^{f}",Handle(HTML1)) RepriseSaisie(HTML1)
******************** Voila, En esperant que cela puisse t'aider
( je me rapelle d'ailleurs t'avoir mailé concernant ce pb mais sans reponse de ta part j'en avais conclu une résolution du pb)
Georges Peyre
Ne cherchez plus !!
La solution est la suivante ( Trouvée sur le site de R.Besset ) // simule le clic sur le champ activex EnvoieTouche("{BTNGAUCHE,104 ,183}",Handle(HTML_EXPLORER)) //simule le CTRL+F EnvoieTouche("^f",Handle(HTML_EXPLORER))
Cordialement
-- Elle est pas belle la vie ?
Ne cherchez plus !!
La solution est la suivante ( Trouvée sur le site de R.Besset )
// simule le clic sur le champ activex
EnvoieTouche("{BTNGAUCHE,104 ,183}",Handle(HTML_EXPLORER))
//simule le CTRL+F
EnvoieTouche("^f",Handle(HTML_EXPLORER))
La solution est la suivante ( Trouvée sur le site de R.Besset ) // simule le clic sur le champ activex EnvoieTouche("{BTNGAUCHE,104 ,183}",Handle(HTML_EXPLORER)) //simule le CTRL+F EnvoieTouche("^f",Handle(HTML_EXPLORER))
Cordialement
-- Elle est pas belle la vie ?
STASZEWSKI André
Pôv Nicolas... Même pas eu un ptit merci pour s'être cassé la tête sur ton pb... -- Cordialement, André STASZEWSKI (Gratuit) Photo Visu 3.1 sur www.PlaneteDev.fr.st Pour me contacter cliquez ici : http://cerbermail.com/?OT0Wnwyzph
Pôv Nicolas...
Même pas eu un ptit merci pour s'être cassé la tête sur ton pb...
--
Cordialement,
André STASZEWSKI
(Gratuit) Photo Visu 3.1 sur www.PlaneteDev.fr.st
Pour me contacter cliquez ici : http://cerbermail.com/?OT0Wnwyzph
Pôv Nicolas... Même pas eu un ptit merci pour s'être cassé la tête sur ton pb... -- Cordialement, André STASZEWSKI (Gratuit) Photo Visu 3.1 sur www.PlaneteDev.fr.st Pour me contacter cliquez ici : http://cerbermail.com/?OT0Wnwyzph
Georges Peyre
Bonjour André,
Il se trouve que STASZEWSKI André a formulé :
Pôv Nicolas... Même pas eu un ptit merci pour s'être cassé la tête sur ton pb...
Tu as raison André je viens juste de lire la réponse de Nicolas que je n'ai pas remarquée au moment ou j'ai tapé mon message.
Un grand Merci à Nicolas
Cordialement
-- Elle est pas belle la vie ?
Bonjour André,
Il se trouve que STASZEWSKI André a formulé :
Pôv Nicolas...
Même pas eu un ptit merci pour s'être cassé la tête sur ton pb...
Tu as raison André je viens juste de lire la réponse de Nicolas que je
n'ai pas remarquée au moment ou j'ai tapé mon message.
Pôv Nicolas... Même pas eu un ptit merci pour s'être cassé la tête sur ton pb...
Tu as raison André je viens juste de lire la réponse de Nicolas que je n'ai pas remarquée au moment ou j'ai tapé mon message.
Un grand Merci à Nicolas
Cordialement
-- Elle est pas belle la vie ?
Georges Peyre
Bonjour Nicolas
Je veux préciser que ton exemple est parfait et plus complet que le mien car il gère le positionnement du curseur après le clic : -1- Avec ma solution trop incomplète le curseur reste positionné quelque part entre le bouton qui vient d'être cliqué et la fenêtre ouverte. -2- Avec ta solution, après l'ouverture de la fenêtre le curseur reste positionné sur le bouton cliqué : ce qui est parfait
Merci encore pour ton aide
Cordialement
nicolas avait écrit le 15/06/2005 :
************* //Permet de simuler un clic gauche dans le champ html pour l'obliger a prendre le focus!!!
//position du curseur nPos,nPosX,nPosY sont des entiers nPos = CurseurPos(cpClient) nPosX = PoidsFaible(nPos) nPosY = PoidsFort(nPos) EnvoieTouche("{BTNGAUCHE,"+NumériqueVersChaine(nPosX,"d")+","+NumériqueVersChaine(nPosY,"d")+"}",Handle(HTML1)) CurseurPos(cpClient,nPosX,nPosY)
// je lance l'ouverture de la fenetre IE de recherche EnvoieTouche("^{f}",Handle(HTML1)) RepriseSaisie(HTML1)
********************
-- Elle est pas belle la vie ?
Bonjour Nicolas
Je veux préciser que ton exemple est parfait et plus complet que le
mien car il gère le positionnement du curseur après le clic :
-1- Avec ma solution trop incomplète le curseur reste positionné
quelque part entre le bouton qui vient d'être cliqué et la fenêtre
ouverte.
-2- Avec ta solution, après l'ouverture de la fenêtre le curseur reste
positionné sur le bouton cliqué : ce qui est parfait
Merci encore pour ton aide
Cordialement
nicolas avait écrit le 15/06/2005 :
*************
//Permet de simuler un clic gauche dans le champ html pour l'obliger a
prendre le focus!!!
//position du curseur
nPos,nPosX,nPosY sont des entiers
nPos = CurseurPos(cpClient)
nPosX = PoidsFaible(nPos)
nPosY = PoidsFort(nPos)
EnvoieTouche("{BTNGAUCHE,"+NumériqueVersChaine(nPosX,"d")+","+NumériqueVersChaine(nPosY,"d")+"}",Handle(HTML1))
CurseurPos(cpClient,nPosX,nPosY)
// je lance l'ouverture de la fenetre IE de recherche
EnvoieTouche("^{f}",Handle(HTML1))
RepriseSaisie(HTML1)
Je veux préciser que ton exemple est parfait et plus complet que le mien car il gère le positionnement du curseur après le clic : -1- Avec ma solution trop incomplète le curseur reste positionné quelque part entre le bouton qui vient d'être cliqué et la fenêtre ouverte. -2- Avec ta solution, après l'ouverture de la fenêtre le curseur reste positionné sur le bouton cliqué : ce qui est parfait
Merci encore pour ton aide
Cordialement
nicolas avait écrit le 15/06/2005 :
************* //Permet de simuler un clic gauche dans le champ html pour l'obliger a prendre le focus!!!
//position du curseur nPos,nPosX,nPosY sont des entiers nPos = CurseurPos(cpClient) nPosX = PoidsFaible(nPos) nPosY = PoidsFort(nPos) EnvoieTouche("{BTNGAUCHE,"+NumériqueVersChaine(nPosX,"d")+","+NumériqueVersChaine(nPosY,"d")+"}",Handle(HTML1)) CurseurPos(cpClient,nPosX,nPosY)
// je lance l'ouverture de la fenetre IE de recherche EnvoieTouche("^{f}",Handle(HTML1)) RepriseSaisie(HTML1)
********************
-- Elle est pas belle la vie ?
nicolas
C'est un probleme que je venais de resoudre donc je me suis contenté de te donner la methode que j'avais utilisé! Ravi d'avoir pu t'aider en tout cas.
A charge de revanche ;)
C'est un probleme que je venais de resoudre donc je me suis contenté
de te donner la methode que j'avais utilisé!
Ravi d'avoir pu t'aider en tout cas.