Comment créer une page dynamiquement dans un contrôle WebBrowser afin qu'il contienne:
*Un texte
*Une image de fond
*Une fonction JavaScript
*Un bouton qui permet de déclencher la fonction JavaScript
(testé en VB et VBA)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 'Placez un contrôle WebBrowser et un contrôle CommandButton 'dans L'UserForm. 'Nécessite les bibliothèques: ' *Microsoft Internet Controls ' *Microsoft HTML Object Library Private Sub Form_Load() '------- 'Cette procédure permet de créer une page dynamiquement 'dans un WebBrowser: ' *Un texte ' *Une image de fond ' *Une fonction JavaScript ' *Un bouton qui permet de déclencher la fonction ' '------- Dim AjoutFonction As String Dim Fichier As String 'Définit l'image de fond Fichier = "http://vb.developpez.com/cours/images/cours_vb.gif" 'Création d'une page vierge qui va servir de support WebBrowser1.Navigate "about:<html><body></body></html>" '--- texte --- AjoutFonction = "<html><body><B>Bienvenue sur cette page.</B>" & vbCrLf '--- image de fond --- AjoutFonction = AjoutFonction & "<BODY background='" & Fichier & "'</BODY>" '--------------------- '--- bouton --- AjoutFonction = AjoutFonction & "<FORM>" & _ "<INPUT type=button name='Bouton1' value='Cliquez ici.' " & _ "onClick=(alert('Bonjour!'))></FORM>" '-------------- '--- fonction javascript --- AjoutFonction = _ AjoutFonction & "<script language=""javascript"">" & vbCrLf AjoutFonction = AjoutFonction & "function maFonction(){" & vbCrLf AjoutFonction = AjoutFonction & "alert(""Coucou"");" & vbCrLf AjoutFonction = AjoutFonction & "}" & vbCrLf AjoutFonction = AjoutFonction & "</script></body></html>" '--------------------------- 'Insertion de la fonction JavaScript dans le WebBrowser WebBrowser1.Document.writeln AjoutFonction End Sub
Comment utiliser un CommandButton VB/VBA pour déclencher la fonction JavaScript contenue dans le WebBrowser?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Private Sub Command1_Click() ' 'Cette procédure montre comment déclencher, par macro VB/VBA, la fonction 'JavaScript contenue dans la page précédemment créée. ' Dim s As String Dim maPageHtml As HTMLDocument Set maPageHtml = WebBrowser1.Document 'Déclenchement de la fonction JavaScript par macro maPageHtml.parentWindow.execScript "maFonction();", "javascript" End Sub
bonne journée
michel
Partager