WindowsFormsApplicationBase.DoEvents Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Elabora tutti i messaggi Windows attualmente presenti nella coda dei messaggi.
public:
void DoEvents();
public void DoEvents();
member this.DoEvents : unit -> unit
Public Sub DoEvents ()
Esempio
In questo esempio viene usato il My.Application.DoEvents metodo per consentire l'aggiornamento dell'interfaccia utente TextBox1 .
Private Sub TestDoEvents()
For i As Integer = 0 To 10000
TextBox1.Text = i.ToString
My.Application.DoEvents()
Next
End Sub
Questo codice deve essere in un formato con un TextBox1 componente con una Text proprietà .
Commenti
Il My.Application.DoEvents metodo consente all'applicazione di gestire altri eventi che potrebbero essere generati durante l'esecuzione del codice. Il My.Application.DoEvents metodo ha lo stesso comportamento del DoEvents metodo .
Quando si esegue un'applicazione Windows Forms, viene creato un nuovo modulo, che attende quindi la gestione degli eventi. Ogni volta che il modulo gestisce un evento, ad esempio un clic su un pulsante, elabora tutto il codice associato a tale evento. Tutti gli altri eventi attendono nella coda. Mentre il codice gestisce l'evento, l'applicazione non risponde. Ad esempio, la finestra non viene ridisegnata se un'altra finestra viene trascinata in alto.
Se si chiama My.Application.DoEvents nel codice, l'applicazione può gestire gli altri eventi. Ad esempio, se il codice aggiunge dati a un ListBox oggetto in un ciclo e dopo ogni passaggio del ciclo chiama My.Application.DoEvents, il modulo viene aggiornato quando viene trascinata un'altra finestra. Se si rimuove My.Application.DoEvents dal codice, il modulo non verrà aggiornato fino al completamento dell'esecuzione del gestore eventi click del pulsante.
In genere, questo metodo viene usato in un ciclo per elaborare i messaggi.
Note
Il My.Application.DoEvents metodo non elabora gli eventi esattamente allo stesso modo del form. Usare il multithreading per gestire direttamente gli eventi nel form. Per ulteriori informazioni, consultare L'utilizzo dei thread e del threading.
Caution
Se un metodo che gestisce un evento dell'interfaccia utente chiama il My.Application.DoEvents metodo , il metodo potrebbe essere nuovamente immesso prima del completamento. Ciò può verificarsi perché il metodo My.Application.DoEvents elabora i messaggi Windows e Windows i messaggi possono generare eventi.
Nella tabella seguente è riportato un esempio di attività che include il My.Application.DoEvents metodo .
| Per | Vedi |
|---|---|
| Consenti a un modulo di rispondere all'input dell'interfaccia utente mentre è occupato | Procedura dettagliata: Gestione degli eventi |
Disponibilità per tipo di progetto
| Tipo di progetto | Disponibile |
|---|---|
| Applicazione Windows Form | Yes |
| Biblioteca di classi | No |
| Applicazione console | No |
| Libreria di controlli Windows Form | No |
| Libreria di controlli Web | No |
| Servizio Windows | No |
| Sito web | No |