Webbrowser et visual basic express 2008

testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008 - 2 juin 2008 à 01:36
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008 - 9 juin 2008 à 23:33
Bonjour,

j'ai fait un petit navigateur sous visual basic express 2008, et j'ai essayé des fonction que j'ai trouvé dans des sources comme par exemple :


Private Sub WebBrowser1_NewWindow2(ByVal ppDisp As Object, ByVal Cancel As Boolean)

Cancel = True

End Sub

Mais ça ne fonctionne pas, lorsque j'essaye d'ouvrir une autre page, elle s'ouvre dans une nouvelle page internet au lieu d'être bloqué...

j'ai également essayé cela :
Dim WithEvents maPageHtml As HtmlDocument



Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, ByVal URL As Object)
maPageHtml = WebBrowser1.Document
End Sub

Private Function maPageHtml_onclick() As Boolean
MsgBox("test")
End Function

Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, _
ByVal URL As Object, ByVal Flags As Object, ByVal TargetFrameName As Object, _
ByVal PostData As Object, ByVal Headers As Object, ByVal Cancel As Boolean)
maPageHtml = Nothing
End Sub

en ajoutant bien la référence Microsoft HTML Object Library
mais j'ai beau cliqué sur la page ça ne me fait pas de textbox...

qui peux m'aider ? merci.

15 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
2 juin 2008 à 10:00
il te faut adapter le code, et non simplement copier coller...
y'a pas grand chose a faire, je pense, néanmoins.
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
2 juin 2008 à 12:14
Ok mais je vois pas comment adapté ?
un peu d'aide svp
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
2 juin 2008 à 13:51
ben tout simplement que tes procédures ne sont en rien rattachées aux evenement de ton controle...

VB2005=> J'ajoute un webbrowser, je double clique sur l'evenement Document Complete afin d'en générer du code, j'obtiens :

Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted

End Sub

là ou toi, tu as :

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, ByVal URL As Object)

End Sub
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
2 juin 2008 à 17:54
Ok, j'ai changé ça, j'ai donc mis :
Private

Sub WebBrowser1_DocumentCompleted(
ByVal sender
As System.Object,
ByVal e
As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs)
Handles WebBrowser1.DocumentCompletedmaPageHtml = WebBrowser1.Document

End
Sub 

Mais  il doit encore y avoir un truc qui ne va pas car ça ne fonctionne toujours pas

Voila le tout :

Public
Class Form1

Private
Sub Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load

Dim page
As
String

page =

http://www.google.frWebBrowser1.Navigate(page)

End
Sub

Dim
WithEvents maPageHtml
As HtmlDocument

Private
Sub WebBrowser1_DocumentCompleted(
ByVal sender
As System.Object,
ByVal e
As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs)
Handles WebBrowser1.DocumentCompletedmaPageHtml = WebBrowser1.Document

End
Sub 

Private
Function maPageHtml_onclick()
As
BooleanMsgBox(

"test")

End
Function

Private
Sub WebBrowser1_BeforeNavigate2(
ByVal pDisp
As
Object, _

ByVal URL
As
Object,
ByVal Flags
As
Object,
ByVal TargetFrameName
As
Object, _

ByVal PostData
As
Object,
ByVal Headers
As
Object,
ByVal Cancel
As
Boolean)maPageHtml =

Nothing

End
Sub

Private
Sub WebBrowser1_NewWindow2(
ByVal ppDisp
As
Object,
ByVal Cancel
As
Boolean)Cancel =

True

End
Sub

End

Class
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
3 juin 2008 à 01:35
Bon, j'ai trouvé un peu, il me manque juste un petit truc.
J'ai réussi a bloquer l'ouverture de popup. Maintenant j'aimerai bloqué l'action de click dans le webbrowser.
Voila mon code, et je sais pas du tout quoi mettre dans maPageHtml_Click



Public






Class
Form1


Private



Sub
Form1_Load(

ByVal
sender

As
System.Object,

ByVal
e

As
System.EventArgs)

Handles



MyBase
.Load


Dim
page

As



String











page =

"google.fr"

WebBrowser1.Navigate(page)







End



Sub 







Dim



WithEvents
maPageHtml

As
HtmlDocument


Private



Sub
WebBrowser1_DocumentCompleted(

ByVal
sender

As
System.Object,

ByVal
e

As
System.Windows.Forms.WebBrowserDocumentCompletedEventArgs)

Handles
WebBrowser1.DocumentCompletedmaPageHtml = WebBrowser1.Document


End



Sub


Private



Sub
maPageHtml_Click(

ByVal
sender

As



Object
,

ByVal
e

As
System.Windows.Forms.HtmlElementEventArgs)

Handles
maPageHtml.Click


End



Sub






Private



Sub
WebBrowser1_NewWindow(

ByVal
sender

As



Object
,

ByVal
e

As
System.ComponentModel.CancelEventArgs)

Handles
WebBrowser1.NewWindowe.Cancel =


True






End



SubEnd





Class
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
3 juin 2008 à 05:52
MessageBox.Show "Test"
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
3 juin 2008 à 18:19
Bah non ça ne bloque pas les clics....
et je ne veux pas de message qui s'affiche :)
moi je veux juste annulé les clics sur les pages internet de mon webbrowser
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
4 juin 2008 à 04:06
suffit juste de renvoyer False, en VB6

à lire la documentation MSDN:
http://msdn.microsoft.com/fr-fr/library/system.windows.forms.htmlelementeventargs_members.aspx

e.ReturnValue = False
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
4 juin 2008 à 12:30
Ok, ça fonctionne sur les pages normal mais ça ne fonctionne pas sur les videos style youtube, on peut cliqué et mettre pause ou ouvrir le menu baisser le son etc...
comment faire pour empécher cela ?
merci.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
4 juin 2008 à 14:05
dois-je préciser que tu tu as la main à 100% sur l'HTML affiché ?

tu dois pouvoir le modifier pour masquer carréement ces boutons ^^
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
4 juin 2008 à 15:03
Je peux bien masqué le menu en bas mais le probleme c'est que l'on peu cliqué directement sur la video et ça met sur pause et il y aussi le clic droit qui ouvre un menu contextuel sur la video, et j'aimerai enlevé cela.
Mais pourquoi ça fonctionne bien sur les page normal avec des liens et pas sur un object flash ?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
4 juin 2008 à 15:09
Flash fait sa vie, sans forcément avertir l'HTMLDocument
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
4 juin 2008 à 15:15
Arfff le méchant :p
Comment détourner ça ? Si c'est possible
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
5 juin 2008 à 13:00
Donc pas moyen même de juste enlevé le clic droit sur la video youtube ?:(
0
testeur115 Messages postés 34 Date d'inscription jeudi 12 avril 2007 Statut Membre Dernière intervention 15 juin 2008
9 juin 2008 à 23:33
Bon, j'ai réglé le probleme en bloquant le mouvement de la souris pour qu'elle ne puisse pas  se trouvé sur la video :)
0
Rejoignez-nous