Freigeben über


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, damit die Benutzeroberfläche für TextBox1 aktualisiert werden kann.

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

Dieser Code sollte in einem Formular vorliegen, das über eine TextBox1 Komponente mit einer Text -Eigenschaft verfügt.

Hinweise

Die My.Application.DoEvents -Methode ermöglicht es Ihrer Anwendung, andere Ereignisse zu behandeln, die während der Codeausführung ausgelöst werden können. 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 auf die Behandlung von Ereignissen wartet. 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 behandelt, antwortet Ihre Anwendung nicht. Beispielsweise wird das Fenster nicht neu gezeichnet, wenn ein anderes Fenster oben gezogen wird.

Wenn Sie in Ihrem Code aufrufen My.Application.DoEvents , kann Ihre Anwendung die anderen Ereignisse verarbeiten. Wenn ihr Code beispielsweise Daten zu einer ListBox in einer Schleife hinzufügt und nach jedem Schritt der Schleife aufgerufen wird My.Application.DoEvents, wird das Formular neu gezeichnet, wenn ein anderes Fenster darüber gezogen wird. Wenn Sie aus dem Code entfernen My.Application.DoEvents , wird das Formular erst dann neu gezeichnet, wenn die Ausführung des Klickereignishandlers der Schaltfläche abgeschlossen ist.

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

Hinweis

Die My.Application.DoEvents-Methode verarbeitet Ereignisse nicht in genau der gleichen 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 Benutzeroberflächenereignis (UI) behandelt, die My.Application.DoEvents Methode aufruft, wird die Methode möglicherweise erneut eingegeben, bevor sie abgeschlossen ist. 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