我有一个程序可以正常工作一分钟,但一旦我的互联网连接速度变慢,它就会停止工作。
这是因为我拥有计时器设定的所有内容。
我已经尝试过减慢间隔时间,但它仍然会不时地混乱。
程序必须有一种方法可以等到它完成一项任务,然后自动执行下一个任务,而不是将下一个任务挂到计时器上。
这是我的意思的一个例子:
WebBrowser1.navigate("http://www.google.com")
[IF COMPLETED THEN MOVE ON TO NEXT TASK]
WebBrowser1.Document.GetElementById("gbqfba").InvokeMember("click")
我拉着我的头发试图把它想出来lol
答案 0 :(得分:1)
该方法中的代码应以Navigate
调用结束。当WebBrowser
完成加载指定页面后,它将引发其DocumentCompleted
事件。您处理该事件并在事件处理程序中处理该页面。然后,您可以调用Navigate
加载下一页,然后继续该过程。通过处理活动,您不必关心加载页面所需的时间。你知道你在装载它的那一刻就会处理它;不久,不迟。
答案 1 :(得分:0)
Threading.Thread.Sleep(1000) ' 1000 milliseconds is 1 second
查看您的代码,为什么不使用这些事件?
Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
WebBrowser1.Document.GetElementById("gbqfba").InvokeMember("click")
End Sub