Funkcija DoEvents

Napomena: Funkcija, način, objekt ili svojstvo opisano u ovoj temi onemogućeno je ako je Microsoft Jet Expression servis pokrenut u načinu rada s izdvojenom funkcijom, čime se sprječava vrednovanje potencijalno nesigurnih izraza. Dodatne informacije o načinu rada s izdvojenom pomoću pretraživanja potražite u odjeljku "Izdvojeni način rada".

Izvršenje prinosa tako da operacijski sustav može obrađivati druge događaje.

Sintaksa

DoEvents ()

Napomene

Funkcija DoEvents vraća cijeli broj koji predstavlja broj otvorenih obrazaca u samostalnim verzijama programa Microsoft Visual Basic, kao što je Visual Basic, Professional Edition. DoEvents vraća nulu u svim drugim aplikacijama.

DoEvents prenosi kontrolu u operacijski sustav. Kontrola će se vratiti kada operacijski sustav dovrši obradu događaja u svom redu čekanja i sve tipke u redu čekanja za Send -ove.

DoEvents je najkorisniji za jednostavne stvari kao što je dopuštajući korisniku da poništi postupak nakon početka, primjerice pretraživanje datoteke. Za dugoročne procese, popustljiv do procesora bolje je postići pomoću mjerača vremena ili delegiranjem zadatka na ActiveX EXE komponentu. U zadnjem slučaju zadatak se može nastaviti potpuno neovisno o vašoj aplikaciji, a operacijski sustav brine se za multitasking i rezanje vremena.

Svaki put kada privremeni prinos na procesor unutar postupka događaja, provjerite nije li postupak ponovno izvršava iz drugog dijela koda prije povratka prvog poziva; To može prouzročiti nepredvidljive rezultate. Osim toga, ne koristite DoEvents ako bi druge aplikacije mogle komunicirati s vašim postupkom na nepredviđenim načinima tijekom vremena koje ste donijeli kontroli.

Primjer

Napomena: Primjeri koji slijede prikazuju korištenje te funkcije u modulu jezika Visual Basic for Applications (VBA). Da biste pronašli dodatne informacije o radu s VBA-om, na padajućem popisu uz stavku Traži odaberite stavku Referenca za razvojne inženjere pa unesite jedan ili više izraza u okvir pretraživanja.

U ovom se primjeru koristi funkcija DoEvents da bi se izvršenje izazvalo u operacijskom sustavu jedanput na svakih 1000 iteracija petlje. DoEvents vraća broj otvorenih oblika Visual Basic, ali samo kada je aplikacija domaćin 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.

Potrebna vam je dodatna pomoć?

Proširite svoje vještine korištenja sustava Office
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×