Piezīme.: Šajā tēmā aprakstītā funkcija, metode, objekts vai rekvizīts tiek atspējots, ja Microsoft Jet Expression Service darbojas smilškastes režīmā, tā neļauj novērtēt potenciāli nedrošas izteiksmes. Lai iegūtu papildinformāciju par smilškastes režīmu, meklējiet "smilškastes režīms" sadaļā Palīdzība.
Rezultātā tiek izpildīts, lai operētājsistēma varētu apstrādāt citus notikumus.
Sintakse
DoEvents ( )
Piezīmes
Funkcija DoEvents atgriež veselu skaitli, kas attēlo atvērto formu skaitu programmas Microsoft Visual Basic savrupajā versijā, piemēram, Visual Basic, Professional Edition. DoEvents atgriež nulli visās pārējās lietojumprogrammās.
DoEvents nodod vadību operētājsistēmai. Vadīkla tiek atgriezta, kad operētājsistēma ir pabeigusi notikumu apstrādi rindā un ir nosūtītas visas atslēgas rindā SendKeys .
DoEvents ir visnoderīgākais vienkāršu darbību piemēriem, piemēram, ļauj lietotājam atcelt procesu pēc tā sākšanas, piemēram, meklējot failu. Ilgmūžiem procesiem iegūt procesoru ir vēl vairāk, izmantojot taimeri vai deleģējot uzdevumu ActiveX EXE komponentam. Pēdējā gadījumā uzdevums var turpināties pilnībā neatkarīgi no jūsu lietojumprogrammas, un operētājsistēma rūpējas par vairākuzdevumu piemērošanu un laika licēšanu.
Ja īslaicīgi atgriežaties procesoram notikuma procedūrā, pārliecinieties, vai procedūra netiek izpildīts vēlreiz no citas koda daļas, pirms tiek atgriezts pirmais zvans. tas var izraisīt neparedzētus rezultātus. Turklāt nelietojiet DoEvents , ja citas lietojumprogrammas, iespējams, varētu mijiedarboties ar jūsu procedūru neparedzētos veidos laika periodā, kad sniedzāt vadību.
Piemērs
Piezīme.: Turpmākajos piemēros redzama šīs funkcijas izmantošana Visual Basic for Applications (VBA) modulī. Lai iegūtu papildinformāciju par darbu ar VBA, nolaižamajā sarakstā atlasiet Uzziņas materiāli izstrādātājiem blakus meklēšanas lodziņam un ievadiet šajā lodziņā vienu vai vairākus vārdus.
Šajā piemērā tiek izmantota funkcija DoEvents , lai izpildi operētājsistēmai iegūtu ik pēc 1000 cilpas iterācijām. DoEvents atgriež atvērto Visual Basic formu skaitu, bet tikai tad, ja resursdatora lietojumprogramma ir Visual Basic.
' 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.