en fait, j'y ai pensé mais c'est pas exactement comme ça 
j'ai fait comme ça :
1 2
| WebBrowser1.Document.GetElementsByTagName("input").Item(2).OuterHtml = "<input type='submit' name='connexion' value='Login'>"
WebBrowser1.Document.All.Item("connexion").InvokeMember("click") |
Par contre, je bloque encore
( décidément ^^ ). Mais là c'est vraiment débile ^^
Il faut que je récupère l'évènement "documentcompleted" pour pouvoir executer une suite d'ordre mais seulement une fois que la page est chargé, sinon ça merdouille...
et là ça me dépasse completement ( comme ça "pour changer" ? ^^ )
voici mon algo :
Appel fonction NAVIGUER(adresse)
Une fois la page chargée ( documentcompleted)
faire ce que j'ai a faire
Appel fonction NAVIGUER(adresse)
Une fois la page chargée ( documentcompleted)
faire autre chose
etc ...
donc j'ai trouvé plusieurs bout de code qui recupere justement l'évenement et attende qu'il soit déclenché.
j'en ai donc fais ça mais ça ne fais pas ce que je veux lol
je fait un appel de la fonction naviguer(http://www.google.fr)
ça fait ça :
1 2 3 4 5 6 7 8 9 10 11 12
|
Sub naviguer(ByVal adresse As String)
WebBrowser1.Navigate(New Uri(adresse)) 'connexion
AddHandler WebBrowser1.DocumentCompleted, New _ ' pas compris, c'est pour recup l'état de l'évent, un truc dans le genre
WebBrowserDocumentCompletedEventHandler(AddressOf charge) 'une fois chargé, il appel la fonction que j'ai appelé charge
End Sub
Private Sub charge(ByVal sender As Object, _
ByVal e As WebBrowserDocumentCompletedEventArgs) ' fonction charge en question
Dim webBrowser1 As WebBrowser = CType(sender, WebBrowser) 'jsais pas
MsgBox("coucou ") 'ce quelle fait
End Sub |
mais le truc c'est que dans "AdressOf charge", je ne peut pas faire : (AdressOf variable), resultat, pour faire 3 truc différent, je doit faire 6 fonctions ! ( ou sub, mais j'appele ça fonction lol )...
En bricolant, j'ai tenté de faire une variable boolean, qui, lorsque que c'est chargé passe pas TRUE, mais ça marche pas car le
1 2 3
| while page_chargée = false
'ne rien faire
end while |
me fais tourner en rond en me faisant tout planter
Comment faire pour qu'il fasse un truc comme ça par exemple :
Appel fonction naviguer(adresse)
page chargé
suite
etc...
Merci 
Edit : n'empêche qu'avec tous les problèmes que j'ai a la suite, je vais même pouvoir me monter un site avec des exercices en posant mes problèmes au gens, ça aide bien a progresser :p
EDIT 2 :
Sur ce site, j'ai trouvé plein de choses interessantes, ça peut aider des gens ( moi en l'occurence ^^ )
http://www.dc9.cn/post/310.html
j'essai ça :
VB.NET 2.0
1 2 3 4 5 6 7 8 9
| Private Sub WebBrowser_DocumentCompleted(ByVal sender As Object, _
ByVal e As WebBrowserDocumentCompletedEventArgs) _
Handles WebBrowser.DocumentCompleted
bBusy = False
End Sub |
To finish off the example, don’t forget to declare the public bBusy flag.
VB.NET
public bBusy As Boolean = false
mais ça fais pas ce que je veut ( ça n'attend pas :s )
EDIT 3 : ( le dernier lol )
Maintenant que vous avez tout lu, j'annonce que j'ai reussi ! ^^
j'ai fais comme sur le site donné au dessus, voici ma SUB naviguer :
( bbusy a été déclaré en boolean )
1 2 3 4 5 6 7 8
|
Sub naviguer(ByVal adresse As String)
bbusy = True
WebBrowser1.Navigate(New Uri(adresse))
While (bbusy)
Application.DoEvents()
End While
End Sub |
Partager