一連のURLを循環するフォーム上に「回転子」を作成しようとしていて、URLをWebBrowser
コントロールに表示しています。次のコードはフォームを表示しますが、フォームは白/空白のままで、しばらくすると配列の最後のURLが表示されます。 MessageBox
を各URLの中間に置くと、停止が作成され、正常に動作し、各URLが表示されます。私はSleep
をMessageBox
の代わりに入れてみましたが、うまくいかなかった。私はまた、Sleep
の時間を増やしてみましたが、それもうまくいきませんでした。どうすれば正しく動作させることができますか?VB.NETのWebBrowserコントロールで複数のURLを連続して開きます。
Sub Rotate()
Dim Urls() As String = {"www.stackoverflow.com", "www.google.com", "www.yahoo.com"}
Dim counter As Integer = 0
Form3.Show()
Do Until counter = 3
Form3.WebBrowser1.ScriptErrorsSuppressed = True
Form3.WebBrowser1.Navigate(Urls(counter))
'MessageBox.Show("Next")
counter = counter + 1
System.Threading.Thread.Sleep(2000)
Loop
End Sub
ありがとう。私がURLを開こうとしないと、あなたが提案した最初のアプローチがうまくいきます。たとえば、 "Form3.WebBrowser1.Navigate(Urls(counter))"を "Label1.Text = Urls(counter)"に置き換えると、ラベルは期待どおりに変更されます。ただし、「ナビゲート」の場合は、最後のURLのみが表示されます。また、2番目の提案の例を挙げることができますか? – user3080392
私の答えを更新しました。私はそれが援助を望む – DAXaholic
あなたの解決策は働いた。ありがとう!マイナーな調整を加えて答えを掲載しました。 – user3080392