DoEvents-Funktion

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

Hinweis : Die Funktion, die Methode, das Objekt oder die Eigenschaft, die bzw. das in diesem Thema erläutert wird, ist deaktiviert, falls der Ausdrucksdienst in Microsoft Jet im geschützten Modus (Sandbox Mode) ausgeführt wird. In diesem Modus wird die Auswertung von potenziell unsicheren Ausdrücken verhindert. Weitere Informationen zum geschützten Modus erhalten Sie, wenn Sie in der Hilfe nach "sandbox mode" suchen.

Führt zur Ausführung, damit das Betriebssystem andere Ereignisse verarbeiten kann.

Syntax

DoEvents ( )

Hinweise

Die DoEvents -Funktion gibt eine ganze Zahl, die die Anzahl der geöffneten Formulare in eigenständigen Versionen von Microsoft Visual Basic, z. B. Visual Basic Professional Edition darstellt. DoEvents gibt 0 (null) in allen anderen Programmen.

DoEvents übergibt die Steuerung an das Betriebssystem. Nachdem das Betriebssystem die Verarbeitung der Ereignisse in seiner Warteschlange abgeschlossen hat und alle Schlüssel in der Warteschlange Tastaturbefehle gesendet worden sind, wird die Steuerung zurückgegeben.

DoEvents ist besonders hilfreich für einfache Vorgänge, z. B. wenn einem Benutzer ermöglicht werden soll, einen Vorgang (beispielsweise die Suche nach einer Datei) abzubrechen, nachdem dieser gestartet wurde. Für Vorgänge, deren Ausführung längere Zeit in Anspruch nehmen, kann eine Ausgabe an den Prozessor besser mithilfe eines Zeitgebers oder durch Delegieren der Aufgabe durchgeführt werden. Im letzteren Fall kann die Ausgabe vollständig unabhängig von Ihrer Anwendung fortgesetzt werden und das Betriebssystem übernimmt das Multitasking und die Zeiteinteiung.

Jedes Mal, wenn Sie innerhalb einer Ereignisprozedur vorübergehend an den Prozessor übergeben, müssen Sie sicherstellen, dass die Prozedur nicht erneut von einem anderen Teil des Codes ausgeführt wird, bevor der erste Aufruf zurückgegeben wird. Dies könnte zu unerwarteten Ergebnissen führen. Verwenden Sie außerdem DoEvents nicht, wenn andere Anwendungen möglicherweise auf unvorhergesehene Art mit Ihrer Prozedur in Konflikt geraten, während Sie die Steuerung übernommen haben.

Beispiel

Hinweis : Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

In diesem Beispiel wird die DoEvents-Funktion verwendet, damit die Berechnung einmal alle 1.000 Iterationen der Schleife vom Betriebssystem ausgeführt wird. DoEvents gibt die Anzahl der geöffneten Visual Basic-Formulare zurück, aber nur, wenn es sich bei der Hostanwendung um Visual Basic handelt.

' Create a variable to hold number of 
' Visual Basic forms loaded and visible.
Dim I, OpenForms
For I = 1 To 150000 ' Start loop.
If I Mod 1000 = 0 Then ' If loop has repeated
' 1000 times.
OpenForms = DoEvents ' Yield to operating system.
End If
Next I ' Increment loop counter.

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×