Accedi a Microsoft
Accedi o crea un account.
Salve,
Select a different account.
Hai più account
Scegli l'account con cui vuoi accedere.

Nota: La funzione, il metodo, la proprietà o l'oggetto descritto in questo argomento è disabilitato se Microsoft Jet Expression Service è in esecuzione in modalità sandbox, che impedisce la valutazione delle espressioni potenzialmente pericolose. Per altre informazioni sulla modalità sandbox, cercare "modalità sandbox" nella Guida.

Indica l'esecuzione in modo che il sistema operativo possa elaborare altri eventi.

Sintassi

DoEvents ( )

Osservazioni

La funzione DoEvents restituisce un numero intero che rappresenta il numero di maschere aperte in versioni autonome di Microsoft Visual Basic, ad esempio Visual Basic, Professional Edition. DoEvents restituisce zero in tutte le altre applicazioni.

DoEvents passa il controllo al sistema operativo. Il controllo viene restituito al termine dell'elaborazione degli eventi nella coda da parte del sistema operativo e dopo l'invio di tutti i tasti nella coda SendKeys.

DoEvents è particolarmente utile per operazioni semplici, ad esempio per consentire a un utente di annullare un processo dopo l'avvio, ad esempio per cercare un file. Per i processi a esecuzione lunga, la resa al processore è più semplice usando un timer o delegando l'attività a un ActiveX EXE. Nell'ultimo caso, l'attività può continuare completamente indipendentemente dall'applicazione e il sistema operativo si occupa di multitasking e slicing di tempo.

Ogni volta che si cede temporaneamente al processore all'interno di una routine evento, assicurarsi che il routine non venga eseguito di nuovo da una parte diversa del codice prima della ritorno della prima chiamata; questo potrebbe causare risultati imprevisti. Inoltre, non usare DoEvents se altre applicazioni potrebbero interagire con la procedura in modi imprevisti durante il controllo prodotto.

Esempio

Nota: Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.

In questo esempio viene utilizzata la funzione DoEvents per far sì che l'esecuzione si rendo al sistema operativo ogni 1000 iterazioni del ciclo. DoEvents restituisce il numero di maschere Visual Basic aperte, ma solo quando l'applicazione host 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.

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Office Insider

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?

Grazie per il feedback!

×