2014-04-10 95 views
0

這是我的代碼:我如何解決這與ListBox問題?

Private Sub StartToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As  System.EventArgs) Handles StartToolStripMenuItem.Click 
    Video1.Start() 
    Video1.Interval = 4000 
    ToolStripStatusLabel2.Text = "Browsing" 
End Sub 

Private Sub Video1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Video1.Tick 
    ToolStripStatusLabel4.Text += 1 
    ListBox1.SelectedIndex = rnd.Next(0, ListBox1.Items.Count - 1) 
    WebBrowser1.Navigate(ListBox1.SelectedItem) 
End Sub 

問題是可以說該定時器間隔設置爲4個secods(4000)。我希望我的應用程序按順序導航到我的ListBox中的每個項目:網站1,網站2,網站3等。但相反,它做到這一點:網站5,網站2,網站8,網站1.其導航到隨機網站。

+0

一件事,怎麼能DOEN所以當已經選擇了最後一個項目的計時器,然後設置爲停止,如即時得到一個錯誤說:ArgumentOutOfRange異常的「5」 InvalidArgument = Value是對'SelectedIndex'無效。 – user3478700

回答

1

這是隨機的原因似乎是因爲您呼叫的隨機數生成器,然後從列表框中選擇該項目:

rnd.Next(0, ListBox1.Items.Count - 1) 

相反,你應該分配一個變量,你當前在它儲存指標。每當計時器滴答時增加此值。

Private currentIndex As Integer = 0 

Private Sub Video1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)  Handles Video1.Tick 
    ToolStripStatusLabel4.Text += 1 
    currentIndex += 1 
    ListBox1.SelectedIndex = currentIndex 
    WebBrowser1.Navigate(ListBox1.SelectedItem) 
End Sub 
+0

完美的作品。 – user3478700