在页面之间切换时,多页控件上的 Web 浏览器控件消失



在多页控件上使用 Web 浏览器控件时,为什么在页面之间切换然后再次切换会导致 Web 浏览器控件消失?

您还可以将选项卡控件与多个 Web 浏览器一起使用。此选项的优点是保留小工具上次加载的网页。只需创建具有所需网页页号的选项卡控件。对于网络浏览器的尺寸,我建议您直观地创建一个并在销毁它之前获取其坐标。这是要使用的代码。

enter code here
Dim webbrowser(3)
Dim actuelpage
Private Sub TabStrip1_Change()
webbrowser(actuelpage).Visible = False
actuelpage = Me.TabStrip1.SelectedItem.Index
webbrowser(actuelpage).Visible = True
End Sub
Private Sub UserForm_Activate()
Dim pages As Variant
pages = Array("www.google.com", "www.allo.com", "www.microsoft.com")
For a = 0 To UBound(webbrowser) - 1
Set webbrowser(a) = Me.Controls.Add("Shell.Explorer.2")
webbrowser(a).Height = 306
webbrowser(a).Left = 30
webbrowser(a).Top = 42
webbrowser(a).Width = 684
webbrowser(a).Silent = True
webbrowser(a).navigate pages(a)
webbrowser(a).Visible = False        
Next a
actuelpage = 0
webbrowser(actuelpage).Visible = True
End Sub
enter code here

Web浏览器控件在多页控件上不起作用似乎是一个常见问题,到目前为止,我还没有看到解决方案。

这是我设计的解决方案。 它只是在每次选择页面时重新创建 Web 浏览器控件。

Dim wbr As SHDocVw.WebBrowser
Private Sub MultiPage1_Change()
If MultiPage1.SelectedItem.Name = "Page 1" Then
Set wbr = Nothing
Set wbr = Me.MultiPage1.SelectedItem.Controls.Add("Shell.Explorer.2")
wbr.Height = 700
wbr.Left = 96
wbr.Top = 24
wbr.Width = 570
wbr.Navigate "About:Blank"
wbr.Document.write "<HTML><Body><embed src=""file:///C:UsersUserFile.pdf"" width=100% height=100%/></Body></HTML>"
wbr.Document.body.scroll = "no"
End If
End Sub
Private Sub UserForm_Initialize()
Set wbr = Me.MultiPage1.SelectedItem.Controls.Add("Shell.Explorer.2")
wbr.Height = 700
wbr.Left = 96
wbr.Top = 24
wbr.Width = 570
wbr.Navigate "About:Blank"
wbr.Document.write "<HTML><Body><embed src=""file:///C:UsersUserFile.pdf"" width=100% height=100%/></Body></HTML>"
wbr.Document.body.scroll = "no"
End Sub

最新更新