My.Application.DoEvents-Methode
Aktualisiert: November 2007
Verarbeitet alle Windows-Meldungen, die sich derzeit in der Meldungswarteschlange befinden.
' Usage
My.Application.DoEvents()
' Declaration
Public Sub DoEvents()
Hinweise
Mithilfe der My.Application.DoEvents-Methode kann eine Anwendung andere Ereignisse behandeln, die während der Ausführung des Codes möglicherweise ausgelöst werden. Die My.Application.DoEvents-Methode weist das gleiche Verhalten wie die DoEvents-Methode auf.
Wenn Sie eine Windows Forms-Anwendung ausführen, wird ein neues Formular erstellt, das dann Ereignisse behandeln kann. Immer dann, wenn das Formular ein Ereignis behandelt, z. B. das Klicken auf eine Schaltfläche, wird der gesamte Code verarbeitet, der dem Ereignis zugeordnet ist. Alle anderen Ereignisse verbleiben in der Warteschlange. Während der Code das Ereignis behandelt, reagiert die Anwendung nicht. Beispielsweise wird das Fenster nicht neu aufgebaut, wenn ein anderes Fenster darüber gezogen wird.
Wenn Sie im Code My.Application.DoEvents aufrufen, kann die Anwendung die anderen Ereignisse behandeln. Wenn der Code beispielsweise einem ListBox Daten in einer Schleife hinzufügt und nach jeder Schleifeniteration My.Application.DoEvents aufruft, wird das Formular neu aufgebaut, wenn ein anderes Fenster über das Formular gezogen wird. Wenn Sie My.Application.DoEvents aus dem Code entfernen, wird das Formular solange nicht neu aufgebaut, bis der Click-Ereignishandler der Schaltfläche die Ausführung abgeschlossen hat.
Üblicherweise wird diese Methode in einer Schleife zum Verarbeiten von Meldungen verwendet.
Hinweis: |
---|
Die My.Application.DoEvents-Methode verarbeitet Ereignisse nicht genau auf die gleiche Weise wie das Formular. Verwenden Sie Multithreading, wenn das Formular die Ereignisse direkt behandeln soll. Weitere Informationen finden Sie unter Multithreading in Visual Basic. |
Vorsicht: |
---|
Wenn eine Methode, die ein Benutzeroberflächenereignis behandelt, die My.Application.DoEvents-Methode aufruft, wird die Methode möglicherweise erneut gestartet, bevor sie abgeschlossen wurde. Dieser Fall kann eintreten, weil die My.Application.DoEvents-Methode Windows-Meldungen verarbeitet, und Windows-Meldungen können Ereignisse auslösen. |
Aufgaben
Die folgende Tabelle enthält ein Beispiel für eine Aufgabe mit der My.Application.DoEvents-Methode.
Zweck |
Weitere Informationen finden Sie unter |
---|---|
Zulassen, dass ein Formular auf Benutzeroberflächeneingaben reagiert, während es ausgeführt wird |
Beispiel
In diesem Beispiel wird die My.Application.DoEvents-Methode verwendet, um das Aktualisieren von TextBox1 auf der Benutzeroberfläche zuzulassen.
Private Sub TestDoEvents()
For i As Integer = 0 To 10000
TextBox1.Text = i.ToString
My.Application.DoEvents()
Next
End Sub
Dieser Code muss sich in einem Formular befinden, das über eine TextBox1-Komponente mit einer Text-Eigenschaft verfügt.
Anforderungen
Namespace: Microsoft.VisualBasic.ApplicationServices
Klasse: WindowsFormsApplicationBase
Assembly: Visual Basic-Laufzeitbibliothek (in Microsoft.VisualBasic.dll)
Verfügbarkeit nach Projekttyp
Projekttyp |
Verfügbar |
---|---|
Windows-Anwendung |
Ja |
Klassenbibliothek |
Nein |
Konsolenanwendung |
Nein |
Windows-Steuerelementbibliothek |
Nein |
Web-Steuerelementbibliothek |
Nein |
Windows-Dienst |
Nein |
Website |
Nein |
Berechtigungen
Die folgenden Berechtigungen sind möglicherweise erforderlich:
Berechtigung |
Beschreibung |
---|---|
Steuert die Fähigkeit, auf Dateien und Ordner zuzugreifen. Zugeordnete Enumeration: Unrestricted. |
|
Steuert die Berechtigungen für Benutzeroberflächen und die Zwischenablage. Zugeordnete Enumeration: AllWindows. |
Weitere Informationen finden Sie unter Codezugriffssicherheit und unter Anfordern von Berechtigungen.