Soyez le premier à donner votre avis sur cette source.
Vue 7 999 fois - Téléchargée 702 fois
Public Class Form1 Inherits System.Windows.Forms.Form 'i pointera le numero de l'item Dim i As Integer = 0 'collec recevra l'ensemble des htmlelement du document Dim collec As HtmlElementCollection Private Sub WebBrowser1_DocumentCompleted(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted 'collec recoit les htmlelement de la page web à la fin du chargement de celle ci collec = WebBrowser1.Document.All End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'correspond au bouton go : on lance la navigation du webbrowser avec l'adresse situé dans textbox1 WebBrowser1.Navigate(TextBox1.Text) End Sub Private Sub remplirlestextbox() 'cette procedure rempli les différents champs avec les principal propriété du htmlelement pointé Dim element As HtmlElement element = collec.Item(i) 'son id le fichier pourra etre accéder par getelementbyid TextBox3.Text = element.Id 'son Name le fichier pourra etre accéder par getelementbyname TextBox5.Text = element.Name 'son TagName le fichier pourra etre accéder par getelementbyTagname TextBox7.Text = element.TagName 'son numero d'item (à la brutal ;-) pourra etre accéder par All.item(i) TextBox4.Text = i 'l adresse associée pour les lien html : on peut recuperer ainsi src..... TextBox6.Text = element.GetAttribute("href") 'on le met en rouge sur l'ecran pour l'identifier facilement WebBrowser1.Document.DomDocument.All.Item(i).style.backgroundcolor = "red" End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 'le bouton suivant 'on remet le lien en blanc : j'ai pas réussi a le remettre comme initial : avis aux amateurs je susi preneur WebBrowser1.Document.DomDocument.All.Item(i).style.backgroundcolor = "white" 'on diminu i sauf si on est au debut If i = 0 Then i = collec.Count - 1 Else i = i - 1 remplirlestextbox() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 'le bouton précédent 'idem WebBrowser1.Document.DomDocument.All.Item(i).style.backgroundcolor = "white" 'l'inverse If i = collec.Count - 1 Then i = 0 Else i = i + 1 remplirlestextbox() End Sub Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click WebBrowser1.Document.DomDocument.All.Item(i).Value = TextBox2.Text 'l'instruction qu'il va falloir recopier dans votre code pour remplir le textbox (en remplacant evidemment i par le numero End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click WebBrowser1.Document.All.Item(i).InvokeMember("click") 'l'instruction qu'il va falloir recopier dans votre code pour cliquer (en remplacant evidemment i par le numero i = 0 End Sub End Class
Je suis encore débutante mais avec les commentaires j'ai pu l'appliquer à mon code.
j'enlève juste un point pour les controls qui n'ont pas été nommés proprement
(button1, button2... pas terrible pour la lisibilité)
J'ai joué un peu avec le code pour approfondir mes connaissances et j'ai ajouté ce petit bouton et quelques lignes de code, juste pour rechercher un champ de saisie (sur Name) dont je connais l'identifiant pour faciliter l'insertion automatique.
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim ct As Integer
Dim theItem As HtmlElement
' Test si recherche prossible
If Not collec Is Nothing And Len(Trim$(TextBox5.Text)) > 0 Then
' Déselection suite à une recherche précédente
If i <> -1 Then WebBrowser1.Document.DomDocument.All.Item(i).style.backgroundcolor = "white"
i = -1
' Boucle sur la recherche du champde saisie
For ct = 0 To collec.Count - 1
theItem = collec.Item(ct)
If UCase$(TextBox5.Text) = UCase$(theItem.Name) Then
' Appel de la fonction qui sélectionne le champs
i = ct
Call remplirlestextbox()
End If
Next
End If
End Sub
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.