Private Sub Button1_Click()
For i = 0 To 2
Do While WebBrowser1.IsBusy
Application.DoEvents()
Loop
If i = 0 Then
WebBrowser1.Navigate("http://www.163.com")
ElseIf i = 1 Then
WebBrowser1.Navigate("http://www.sina.com")
ElseIf 1 = 2 Then
WebBrowser1.Navigate("http://www.baidu.com")
End If Next i
End Sub我写了上面的代码,但是执行完了之后,webbrowser好像并不是加载第一个网页,然后再加载第二个第三个。
怎么才能循环利用webbrowser让他循环加载不同的页面呢?
For i = 0 To 2
Do While WebBrowser1.IsBusy
Application.DoEvents()
Loop
If i = 0 Then
WebBrowser1.Navigate("http://www.163.com")
ElseIf i = 1 Then
WebBrowser1.Navigate("http://www.sina.com")
ElseIf 1 = 2 Then
WebBrowser1.Navigate("http://www.baidu.com")
End If Next i
End Sub我写了上面的代码,但是执行完了之后,webbrowser好像并不是加载第一个网页,然后再加载第二个第三个。
怎么才能循环利用webbrowser让他循环加载不同的页面呢?
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Button1_Click()
WebBrowser1.Navigate ("http://www.163.com")
lINE:
If BLN = False Then
DoEvents
GoTo lINE
Else
BLN = False
End If
WebBrowser1.Navigate ("http://www.sina.com")
lINE1:
If BLN = False Then
DoEvents
GoTo lINE1
Else
BLN = False
End If
WebBrowser1.Navigate ("http://www.baidu.com")
End Sub
Private Sub Form_Load()
BLN = False
End SubPrivate Sub WebBrowser1_DownloadComplete()
BLN = True
Sleep 5000
End Sub
Option ExplicitDim sCurURL As String, sNextURL As StringPrivate Sub Command1_Click()
sCurURL = "www.m5home.com"
sNextURL = "www.superkill.cn"
Call WebBrowser1.Navigate(sCurURL)
End SubPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
'当前站点加载完成后再浏览下一个站点
Dim sURL As String
sURL = Replace(URL, "http://", "")
sURL = Replace(sURL, "/", "")
Debug.Print sURL '替换不需要的部分,方便判断
If sURL = sCurURL Then
Call GetNextURL '取得下一个浏览的站点
Call WebBrowser1.Navigate(sCurURL)
End If
End SubPrivate Sub GetNextURL()
'切换下一个浏览的站点.自己添加更多.如果网址太多,可以从文件中读取,就不用写个超级Select Case语句了.
Select Case sCurURL
Case "www.m5home.com"
sCurURL = sNextURL
sNextURL = "www.csdn.net"
Case "www.csdn.net"
sCurURL = sNextURL
sNextURL = "www.superkill.cn"
Case "www.superkill.cn"
sCurURL = sNextURL
sNextURL = "www.m5home.com"
End Select
End Sub
利用DocumentComplete事件可以完成你要的功能.如果想要在每个站点打开后延时切换,可以在GetNextURL中触发一个定时器,然后把在DocumentComplete事件中Call WebBrowser1.Navigate(sCurURL)一句放在定时器里即可.逻辑应该比较清晰,自己分析吧.