Rubrik: HTML/Internet/Netzwerk · WebBrowser | VB-Versionen: VB2005, VB2008 | 19.03.09 |
Ladefortschritt im WebBrowser-Control Zeigt den aktuellen Ladefortschritt beim Laden einer Webseite über das WebBrowser-Control in einem ProgressBar-Control an. | ||
Autor: Dieter Otter | Bewertung: | Views: 12.930 |
www.tools4vb.de | System: Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Heute zeigen wir Ihnen, wie man den Ladevorgang einer Webseite im WebBrowser-Control als Fortschrittsbalken anzeigen kann. Erstellen Sie ein neues Projekt, platzieren auf die Form eine TextBox (txtURL), ein WebBrowser-Control, sowie ein ProgressBar-Control.
Beim Drücken von ENTER in der TextBox soll die angegebene Seite im Browser-Control angezeigt werden:
Private Sub txtURL_KeyPress(ByVal sender As Object, _ ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtURL.KeyPress ' ENTER abfragen If Asc(e.KeyChar) = 13 Then e.Handled = True ' Seite laden WebBrowser1.Navigate(txtURL.Text) End If End Sub
Während das Ladens der Seite wird vom WebBrowser-Control das ProgressChange-Ereignis ausgelöst. Hier lässt sich der Fortschritt dann wie folgt im ProgressBar-Control anzeigen:
Private Sub WebBrowser1_ProgressChanged(ByVal sender As Object, _ ByVal e As System.Windows.Forms.WebBrowserProgressChangedEventArgs) _ Handles WebBrowser1.ProgressChanged ' Ladestatus anzeigen With Me.ProgressBar1 If e.MaximumProgress < .Value Then .Value = 0 If e.MaximumProgress > 0 Then .Maximum = e.MaximumProgress If e.CurrentProgress > 0 AndAlso e.CurrentProgress <= e.MaximumProgress Then .Value = e.CurrentProgress End If End If End With End Sub