WindowsFormsApplicationBase.DoEvents Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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 |