Funzione DoEvents

Nota: Riteniamo importante fornire il contenuto della Guida più recente non appena possibile, nella lingua dell'utente. Questa pagina è stata tradotta automaticamente e potrebbe contenere errori di grammatica o imprecisioni. L'intento è quello di rendere fruibile il contenuto. Nella parte inferiore della pagina è possibile indicare se le informazioni sono risultate utili. Questo è l'articolo in lingua inglese per riferimento.

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.

Restituisce l'esecuzione in modo che il sistema operativo può elaborare altri eventi.

Sintassi

Funzione DoEvents ( )

Osservazioni

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

Funzione DoEvents passa il controllo al sistema operativo. Il controllo viene restituito al termine del sistema operativo sono previsti gli eventi nella coda di elaborazione e tutte le chiavi nella coda InviaTasti sono state inviate.

Funzione DoEvents è particolarmente utile per elementi semplici, come consentire a un utente di annullare un processo dopo l'avvio, ad esempio la ricerca di un file. Per i processi di esecuzione prolungata, restituendo al processore è consigliabile eseguire mediante un Timer o la delega di attività a un componente EXE ActiveX. In tal caso, l'attività potrà continuare completamente indipendente dell'applicazione e il sistema operativo si occupa di multitasking e tempi.

Ogni volta che trasferisce al processore all'interno di una routine evento, assicurarsi che routine non venga eseguita di nuovo da un'altra parte del codice prima restituita la prima chiamata. Ciò potrebbe generare risultati imprevisti. Inoltre, non utilizzare DoEvents se altre applicazioni potrebbero eventualmente interagire con la procedura in modo imprevisti durante il che controllo viene trasferito.

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 usata la funzione DoEvents per esecuzione al sistema operativo ogni 1000 iterazioni del ciclo. Funzione DoEvents restituisce il numero di maschere di 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.
Amplia le tue competenze su Office
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa al programma Office Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×