vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: HTML/Internet/Netzwerk · WebBrowser   |   VB-Versionen: VB2005, VB200819.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 OtterBewertung:     [ Jetzt bewerten ]Views:  12.878 
www.tools4vb.deSystem:  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