Opmerking: De functie, methode, object of eigenschap die in dit onderwerp wordt beschreven, is uitgeschakeld als de Microsoft Jet Expression-service wordt uitgevoerd in de sandboxmodus, waardoor mogelijk onveilige expressies niet kunnen worden geëvalueerd. Voor meer informatie over de sandbox-modus zoekt u naar 'sandbox-modus' in de Help.

Met deze functie wordt de uitvoering overgedragen, zodat het besturingssysteem andere gebeurtenissen kan verwerken.

Syntaxis

DoEvents ( )

Opmerkingen

De functie DoEvents retourneert een geheel getal dat verwijst naar het aantal geopende formulieren in zelfstandige versies van Microsoft Visual Basic, zoals Visual Basic, Professional Edition. DoEvents retourneert nul in alle andere toepassingen.

Met DoEvents wordt de besturing overgedragen aan het besturingssysteem. De besturing wordt teruggegeven als het besturingssysteem de gebeurtenissen in de wachtrij heeft verwerkt en alle toetsen in de wachtrij SendKeys zijn verzonden.

DoEvents is vooral handig voor eenvoudige zaken zoals een gebruiker de mogelijkheid bieden om een proces te annuleren nadat dit is gestart, bijvoorbeeld een zoekopdracht naar een bestand. Voor langdurige processen is overdracht naar de processor gemakkelijker te realiseren met behulp van een timer of door de taak te delegeren naar een ActiveX EXE-component. In het laatste geval kan de taak volledig onafhankelijk van de toepassing worden verwerkt en zorgt het besturingssysteem voor multitasking en time-slicing.

Elke keer dat u tijdelijk over te brengen naar de processor in een gebeurtenisprocedure, moet u ervoor zorgen dat de procedure niet opnieuw wordt uitgevoerd vanuit een ander deel van de code voordat de eerste oproep terugkeert; dit kan onverwachte resultaten opleveren. Gebruik bovendien DoEvents niet als andere toepassingen op onvoorziene manieren interactie kunnen hebben met uw procedure tijdens de periode dat u de besturing hebt overge geven.

Voorbeeld

Opmerking: In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.

In dit voorbeeld wordt de functie DoEvents gebruikt om de uitvoering om de 1000 herhalingen van de lus over te dragen aan het besturingssysteem. DoEvents retourneert het aantal geopende Visual Basic-formulieren, maar alleen als de hosttoepassing Visual Basic is.

' 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.

Meer hulp nodig?

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Microsoft insiders

Was deze informatie nuttig?

Hoe tevreden bent u met de vertaalkwaliteit?
Wat heeft uw ervaring beïnvloed?

Bedankt voor uw feedback.

×