当您在页面之间切换然后再次切换回显示时,是否有人尝试过在多页控件上使用webbrowser控件?
答案 0 :(得分:0)
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:\Users\User\File.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:\Users\User\File.pdf"" width=100% height=100%/></Body></HTML>"
wbr.Document.body.scroll = "no"
End Sub
答案 1 :(得分:0)
您还可以将选项卡控件与多个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