WindowsFormsApplicationBase.DoEvents Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przetwarza wszystkie komunikaty systemu Windows obecnie w kolejce komunikatów.
public:
void DoEvents();
public void DoEvents ();
member this.DoEvents : unit -> unit
Public Sub DoEvents ()
Przykłady
W tym przykładzie użyto My.Application.DoEvents
metody , aby umożliwić aktualizację interfejsu TextBox1
użytkownika.
Private Sub TestDoEvents()
For i As Integer = 0 To 10000
TextBox1.Text = i.ToString
My.Application.DoEvents()
Next
End Sub
Ten kod powinien być w postaci, która ma TextBox1
składnik z właściwością Text
.
Uwagi
Metoda My.Application.DoEvents
umożliwia aplikacji obsługę innych zdarzeń, które mogą być zgłaszane podczas uruchamiania kodu. Metoda My.Application.DoEvents
ma takie samo zachowanie jak DoEvents metoda.
Po uruchomieniu aplikacji Windows Forms zostanie utworzony nowy formularz, który następnie czeka na obsługę zdarzeń. Za każdym razem, gdy formularz obsługuje zdarzenie, takie jak kliknięcie przycisku, przetwarza cały kod skojarzony z tym zdarzeniem. Wszystkie inne zdarzenia czekają w kolejce. Kod obsługuje zdarzenie, ale aplikacja nie odpowiada. Na przykład okno nie jest ponownie wyświetlane w przypadku przeciągnięcia innego okna na wierzchu.
Jeśli wywołasz My.Application.DoEvents
kod, aplikacja może obsługiwać inne zdarzenia. Jeśli na przykład kod dodaje dane do ListBox pętli w pętli, a po każdym kroku pętli wywołuje My.Application.DoEvents
funkcję , formularz jest przemalowany po przeciągnięciu innego okna. Jeśli usuniesz My.Application.DoEvents
kod, formularz nie zostanie powtórzony do momentu zakończenia wykonywania procedury obsługi zdarzeń kliknięcia przycisku.
Zazwyczaj ta metoda jest używana w pętli do przetwarzania komunikatów.
Uwaga
Metoda My.Application.DoEvents
nie przetwarza zdarzeń w taki sam sposób, jak w przypadku formularza. Użyj wielowątków, aby formularz bezpośrednio obsługiwał zdarzenia. Aby uzyskać więcej informacji, zobacz Używanie wątków i wątków.
Przestroga
Jeśli metoda obsługującą zdarzenie interfejsu użytkownika wywołuje metodę My.Application.DoEvents
, metoda może zostać ponownie wprowadzona przed jej zakończeniem. Może się tak zdarzyć, ponieważ My.Application.DoEvents
metoda przetwarza komunikaty systemu Windows, a komunikaty systemu Windows mogą zgłaszać zdarzenia.
W poniższej tabeli wymieniono przykład zadania obejmującego metodę My.Application.DoEvents
.
Działanie | Zobacz |
---|---|
Zezwalaj formularzowi na odpowiadanie na dane wejściowe interfejsu użytkownika podczas zajętości | Przewodnik: obsługa zdarzeń |
Dostępność według typu projektu
Project type (Typ projektu) | Dostępne |
---|---|
Aplikacja interfejsu Windows Forms | Tak |
Biblioteka klas | Nie |
Aplikacja konsoli | Nie |
Biblioteka formantów interfejsu Windows Forms | Nie |
Biblioteka formantów sieci Web | Nie |
Usługa systemu Windows | Nie |
Witryna sieci Web | Nie |