Zdarzenie (informatyka): Różnice pomiędzy wersjami

[wersja nieprzejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
Linia 51:
 
Istnieją tzw. [[okno modalne|okna modalne]], wstrzymujące przetwarzanie zdarzeń przez pozostałe okna danej aplikacji (np. okno z pytaniem na które należy odpowiedzieć tak/nie). Istnieją też [[systemowe okno modalne|systemowe okna modalne]], wstrzymujące przetwarzanie zdarzeń przez wszystkie inne okna (np. pytanie o potwierdzenie zamknięcia systemu).
 
Przykład pętli obsługi zdarzeń znajduje się poniżej.:
<pre>
MSG msg;
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
</pre>
 
Przetwarzanie zdarzeń przez aplikację polega na wykonywaniu w pętli funkcji:
Linia 57 ⟶ 67:
* ''DispatchMessage'' - pobrane zdarzenie jest kierowane do wcześniej zdefiniowanej procedury docelowego okna, która je obsługuje (tzw. ''window procedure''). Procedura ta jest definiowana podczas tworzenia okna.
Istnieje też funkcja ''PeekMessage'' którą można podglądać zdarzenia w kolejce bez pobierania ich.
 
Przykład pętli obsługi zdarzeń znajduje się poniżej.
 
===Przykładowa aplikacja Windows działająca zdarzeniowo===