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, 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 |