WindowsFormsApplicationBase.DoEvents Methode

Definition

Verarbeitet alle Windows-Meldungen, die sich derzeit in der Meldungswarteschlange befinden.

public:
 void DoEvents();
public void DoEvents ();
member this.DoEvents : unit -> unit
Public Sub DoEvents ()

Beispiele

In diesem Beispiel wird die My.Application.DoEvents -Methode verwendet, um die Aktualisierung der Benutzeroberfläche TextBox1 für zuzulassen.

Private Sub TestDoEvents()
    For i As Integer = 0 To 10000
        TextBox1.Text = i.ToString
        My.Application.DoEvents()
    Next
End Sub

Dieser Code sollte in einer Form vorliegen, die über eine TextBox1 Komponente mit einer -Eigenschaft verfügt Text .

Hinweise

Die My.Application.DoEvents -Methode ermöglicht es Ihrer Anwendung, andere Ereignisse zu behandeln, die möglicherweise ausgelöst werden, während Sie Code ausführen. Die My.Application.DoEvents -Methode hat das gleiche Verhalten wie die DoEvents -Methode.

Wenn Sie eine Windows Forms-Anwendung ausführen, wird ein neues Formular erstellt, das dann wartet, bis Ereignisse behandelt werden. Jedes Mal, wenn das Formular ein Ereignis verarbeitet, z. B. ein Schaltflächenklick, verarbeitet es den gesamten Code, der diesem Ereignis zugeordnet ist. Alle anderen Ereignisse warten in der Warteschlange. Während Ihr Code das Ereignis verarbeitet, reagiert Ihre Anwendung nicht. Beispielsweise wird das Fenster nicht neu gezeichnet, wenn ein anderes Fenster nach oben gezogen wird.

Wenn Sie Ihren Code aufrufen My.Application.DoEvents , kann Ihre Anwendung die anderen Ereignisse verarbeiten. Wenn ihr Code beispielsweise Daten in einer ListBox Schleife hinzufügt und nach jedem Schritt der Schleife, die er aufruft My.Application.DoEvents, wird das Formular neu gezeichnet, wenn ein anderes Fenster darüber gezogen wird. Wenn Sie den Code entfernen My.Application.DoEvents , wird das Formular erst dann neu gestrichen, wenn der Klickereignishandler der Schaltfläche ausgeführt wurde.

In der Regel verwenden Sie diese Methode in einer Schleife, um Nachrichten zu verarbeiten.

Hinweis

Die My.Application.DoEvents -Methode verarbeitet Ereignisse nicht genau auf die gleiche Weise wie das Formular. Verwenden Sie Multithreading, damit das Formular die Ereignisse direkt behandelt. Weitere Informationen finden Sie unter Verwenden von Threads und Threading.

Achtung

Wenn eine Methode, die ein Benutzerschnittstellenereignis (UI) verarbeitet, die My.Application.DoEvents -Methode aufruft, wird die Methode möglicherweise erneut eingegeben, bevor sie abgeschlossen wird. Dies kann passieren, weil die My.Application.DoEvents Methode Windows-Nachrichten verarbeitet und Windows-Nachrichten Ereignisse auslösen können.

In der folgenden Tabelle ist ein Beispiel für eine Aufgabe aufgeführt, die die My.Application.DoEvents -Methode umfasst.

Beschreibung Siehe
Zulassen, dass ein Formular auf Benutzeroberflächeneingaben reagiert, während er beschäftigt ist Exemplarische Vorgehensweise: Behandeln von Ereignissen

Verfügbarkeit nach Projekttyp

Projekttyp Verfügbar
Windows Forms-Anwendung Ja
Klassenbibliothek Nein
Konsolenanwendung Nein
Windows Forms-Steuerelementbibliothek Nein
Websteuerelementbibliothek Nein
Windows-Dienst Nein
Website Nein

Gilt für:

Weitere Informationen