WindowsFormsApplicationBase.DoEvents Metódus

Definíció

Feldolgozza az üzenetsorban jelenleg Windows üzeneteket.

public:
 void DoEvents();
public void DoEvents();
member this.DoEvents : unit -> unit
Public Sub DoEvents ()

Példák

Ez a példa a metódust használja a My.Application.DoEvents felhasználói felület frissítésének engedélyezéséhez TextBox1 .

Private Sub TestDoEvents()
    For i As Integer = 0 To 10000
        TextBox1.Text = i.ToString
        My.Application.DoEvents()
    Next
End Sub

Ennek a kódnak olyan formában kell lennie, amely rendelkezik TextBox1 egy tulajdonsággal rendelkező összetevővel Text .

Megjegyzések

A My.Application.DoEvents metódus lehetővé teszi, hogy az alkalmazás kezelje a kódfuttatás során esetlegesen felmerülő egyéb eseményeket. A My.Application.DoEvents metódus viselkedése megegyezik a metódus viselkedésével DoEvents .

Amikor egy Windows Forms alkalmazást futtat, az létrehoz egy új űrlapot, amely megvárja az események kezelését. Minden alkalommal, amikor az űrlap egy eseményt kezel( például egy gombkattintás), feldolgozza az eseményhez társított összes kódot. Az összes többi esemény várakozik az üzenetsorban. Bár a kód kezeli az eseményt, az alkalmazás nem válaszol. Az ablak például nem lesz újrafestve, ha egy másik ablak van felülre húzva.

Ha meghívja My.Application.DoEvents a kódot, az alkalmazás képes kezelni a többi eseményt. Ha például a kód adatokat ad hozzá egy ListBox ciklushoz, és a hívott My.Application.DoEventshurok minden lépése után az űrlap újrarajzolásra kerül, amikor egy másik ablak húzódik rajta. Ha eltávolítja My.Application.DoEvents a kódot, az űrlap nem lesz újrafestve, amíg a gomb kattintási eseménykezelője nem fejeződik be.

Általában ezt a módszert használja egy hurokban az üzenetek feldolgozásához.

Note

A My.Application.DoEvents metódus nem ugyanúgy dolgozza fel az eseményeket, mint az űrlap. Többszálú készítés használatával az űrlap közvetlenül kezelheti az eseményeket. További információ: Szálak és szálkezelés használata.

Figyelmeztetés

Ha egy felhasználói felületi eseményt kezelő metódus meghívja a My.Application.DoEvents metódust, előfordulhat, hogy a metódus újra be lesz írva, mielőtt befejeződne. Ez azért fordulhat elő, mert a My.Application.DoEvents metódus Windows üzeneteket dolgoz fel, és Windows üzenetek eseményeket hozhatnak létre.

Az alábbi táblázat egy példát sorol fel a metódust érintő feladatra My.Application.DoEvents .

Címzett Nézze
Űrlapok válaszának engedélyezése a felhasználói felületi bemenetre elfoglalt állapotban Útmutató: Események kezelése

Rendelkezésre állás projekttípus szerint

Projekt típusa Elérhető
Windows Forms alkalmazás Yes
Osztálytár No
Konzolalkalmazás No
Windows Forms vezérlőtár No
Webvezérlő-kódtár No
Windows-szolgáltatás No
Webhely No

A következőre érvényes:

Lásd még