2013-03-27 161 views
1

我使用VB6在web瀏覽器窗口中使用此代碼發起提出申請:VB6應用:WebBrowser.Navigate刷新每3分鐘

 Private Sub Form_Load() 
    WebBrowser1.Navigate ("http://google.com") 
    End Sub 

我怎樣才能使窗口刷新相同的URL每次我們說3分鐘? 我知道它應該是衆所周知的,但我仍然在通過VB編程尋找我的方式

+0

除非使用'Call'或使用'.Navigate'的返回值,否則不應該在URL周圍加括號。 – Deanna 2013-04-01 14:41:57

回答

1

您可以使用定時器以定期運行代碼。 由於VB6定時器的最大間隔爲〜65s,因此可以將其設置爲60,000ms的間隔,並保留一個單獨的計數器,當它達到3時,將其重置爲0並執行刷新。

Private Sub Timer_Timer 
    'Increment minute count 
    FireCount = FireCount + 1 

    If FireCount = 3 then 
    'Reset to 0 for next time 
    FireCount = 0 

    'Refresh web browser 
    End If 
End Sub 
+0

你可以請告訴我在哪裏可以找到資源/教程關於如何做到這一點,因爲我在VB6 null null – 2013-03-27 17:12:50

+0

@NizarBark這是一個簡單的計時器,增量和if語句,沒有什麼可以輔導。 – Deanna 2013-03-28 09:18:26

+0

我已經把下面的代碼'code'Private子的Form_Load() WebBrowser1.Navigate時( 「http://www.google.com」) 結束小組 私人小組T_Timer() 「增加分鐘數 FireCount = FireCount + 1 如果FireCount = 3然後 '復位爲0下次 FireCount = 0 WebBrowser1.Refresh( 「http://www.google.com」) ' 刷新網頁瀏覽器 結束如果結束 Sub'code',但它給我一個警告說編譯錯誤:錯誤的數字或參數或無效的財產分配 – 2013-03-31 18:37:45

3

你並不需要2個計時器。只需要一個全局變量globalTimer As Date即可保持上一次導航 您可以將Timer1設置爲每秒或每分鐘運行一次。爲了更準確,我建議每一秒。

Dim globalTimer As Date 
... 
Private Sub Timer1_Timer() 
    If Now >= DateAdd("n", 3, globalTimer) Then ' its been at least 3 minutes since last Navigation 
     WebBrowser1.Navigate ("http://google.com") ' Navigate 
     globalTimer = Now       ' store the new navigation time 
    End If 
End Sub 
+0

我試過了代碼,它每隔3秒刷新一次瀏覽器,但它不會打開網站谷歌,因爲它曾經是以前的代碼,請任何幫助! – 2013-03-27 20:06:35

+0

WOOOPS!如果globalTimer> = DateAdd(「n」,3,Now)那麼''應該是'If Now> = DateAdd(「n」,3,globalTimer)然後' – George 2013-03-27 21:48:46