Märkus.: Kui Microsoft Jet Expression Service töötab liivakastirežiimis, mis takistab potentsiaalselt ebaturvaliste avaldiste väärtustamist, on käesolevas artiklis kirjeldatud funktsioon, meetod, objekt või atribuut keelatud. Liivakastirežiimi kohta lisateabe saamiseks otsige spikrist sõna „liivakastirežiim”.
Lõpetab toimingu täitmise, et opsüsteem saaks muid sündmusi töödelda.
Süntaks
DoEvents ( )
Kommentaarid
Funktsioon DoEvents tagastab Microsoft Visual Basicu autonoomsetes versioonides (nt Visual Basic Professional Editionis) olevate avatud vormide hulka tähistava täisarvu. DoEvents tagastab kõigi muude rakenduste korral nullväärtuse.
DoEvents edastab juhtimise opsüsteemile. Juhtimine tagastatakse siis, kui opsüsteem on lõpule viinud järjekorras olevate sündmuste töötlemise ning kõik meetodi SendKeys järjekorras olevad klahvikäsud on saadetud.
Funktsioon DoEvents sobib kasutamiseks eelkõige lihtsate toimingute korral, näiteks võimaldamaks kasutajal toimingu (nt failiotsingu) tühistada. Kauakestvate protsesside korral saab protsessorile juhtimise paremaks edastamiseks kasutada taimerit või delegeerida tegum ActiveX EXE-komponendile. Viimasel juhul jätkub tegum rakendusest täiesti sõltumatult ning multitegumtöö ja ajalõigud jäävad opsüsteemi hooleks.
Iga kord, kui annate sündmuseprotseduuri käigus ajutiselt protsessorile, veenduge, et protseduur ei käivitataks uuesti koodi mõnest muust osast enne esimese kõne tagastamist; see võib põhjustada ettearvamatuid tulemeid. Lisaks ärge kasutage Funktsiooni DoEvents , kui teised rakendused võivad teie protseduuriga ettenägematul viisil suhelda ajal, mil olete juhtimise üle andnud.
Näide
Märkus.: Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateabe saamiseks VBA-ga töötamise kohta valige välja Otsing kõrval kuvatavast ripploendist väärtus Tootearendusmaterjal ja sisestage otsinguväljale üks või mitu sõna.
Selles näites kasutatakse funktsiooni DoEvents juhtimise üleandmiseks opsüsteemile tsükli iga 1000 iteratsiooni järel. DoEvents tagastab Visual Basicu avatud vormide arvu ainult siis, kui hostrakendus on 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.