Accèder au object d'un formulaire d'une page afficher dans un webbrowser

Tuizi Messages postés 144 Date d'inscription samedi 21 octobre 2000 Statut Membre Dernière intervention 7 mai 2009 - 1 août 2002 à 17:52
mdelepin Messages postés 6 Date d'inscription jeudi 26 février 2004 Statut Membre Dernière intervention 23 juin 2004 - 27 mai 2004 à 10:54
Comment faire pour accèder au object afficher dans un webbrowser?
Par exemple, si je mé cette page là de VBFRANCE pour déposer un message, vous voyé ya un Sujet avec un barre ou l'on peut écrire, et ben je voudrais a partir de mon appli pouvoir écrire la dedans (avec une textebox par exemple)

Merci @+
Tuizi

2 réponses

cs_zpiboo Messages postés 46 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 11 juin 2003
8 août 2002 à 09:33
Il faut tout d'abord repérer la structure du site.
Par exemple je vois que le sujet est un INPUT dont le nom 'name' est titre et la value est "Re : ...."
OK.
Il te faut ajouter deux réfrences.
- Microsoft internet controls
- Microsoft html object library
Ensuite il te faut déclarer deux variables une
ex : private page as HTMLDocument.
Elle permet d'avoir tout le document
l'autre : private TITRE as HTMLInputElement
On lui affectera la textbox TITRE du site.
Tu suis toujours...

Une fois ta page chargée dans le webbrowser.
tu l'affecte à la variable HTML
set html = webbrowser.document
ensuite
on affecte a TITRE l'objet de la page que tu veut modifier.
set TITRE = html.getelementsbyname("TITRE")
et ensuite
titre.value = "TU mets ce que tu veut "
Le tour est jouer
tu peut aussi changer les couleurs la place

LE plus important c la deuxième variable elle faut qu'elle soit du type de l'objet HTML sinon tu n'auras pas les bonne propriété.

Il se peut aussi que l'objet sois un sous objet d'un autre dans ce cas tu dois d'abord sélectionner l'objet et ensuite sélectionner le sousobjet de la même façon.

Pour voir la structure du document je te conseille visual studio anlyser tu fais un copier coller de la page dans ce logiciel et il te dira la structure

bonne chance et n'hésite pas si j'ai pas été clair.
0
mdelepin Messages postés 6 Date d'inscription jeudi 26 février 2004 Statut Membre Dernière intervention 23 juin 2004
27 mai 2004 à 10:54
Salut,

J'ai bien suivi tes explications et visiblement ça marche, VB ne me génère pas d'erreurs. Cependant lorsque j'ouvre ma page html à nouveau, les modifications ne sont pas prises en compte. Doit-on recharger le page ou enregistrer les modifications? Si oui, Comment?

Merci de votre aide.

Voilà mon code et ma page (c'est très primitif mais c'est juste un test)

CODE :

Private page As HTMLDocument
Private titre As HTMLInputElement

Private Sub Command1_Click()

Set explorer = CreateObject("internetexplorer.application")
explorer.Visible = False
explorer.navigate "C:\magalie\UEM\essai\uneCase.htm"
Set page = explorer.document
Set titre = explorer.document.getElementById("case")
MsgBox (titre.Value) ' il m'affiche vide
titre.Value = "15"
MsgBox(titre.value) ' il m'affiche 15

PAGE :

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<form name="formulaire1">

</form>

</html>
0