Wykład 13 Zdarzenia
Wizualne systemy programowania
Cykl życia aplikacji
Cykl życia programu
Programowanie wizualne – Windows Forms
Zdarzenia dotyczą całego okna – nie poszczególnych komponentów.
Cykl życia programu
• Load
• Activated
• Shown
• Praca programu
• Closing
• Closed
Activate Deactivate
Zdarzenia
Programowanie wizualne – Windows Forms
Przykład:
Potwierdzenie zamknięcia programu
Zdarzenia
Przykład:
Potwierdzenie zamknięcia programu
Wygląd / rozmiar / połorzenie aplikacji
Wizualne systemy programowania
Zdarzenia
Początek zmiany rozmiaru okna/ zakończenie zmiany rozmiaru
Zdarzenie wywoływane
podczas zmiany rozmiaru (w sposób ciągły)
Zdarzenie wywoływane podczas przerysowania okna lub jego fragmentu Zdarzenie wywoływane podczas przesuwania okna
Zdarzenia
Programowanie wizualne – Windows Forms
Przykład:
Wyświetlenie aktualnej pozycji lub rozmiaru okna na pasku statusu
Pozycja
Rozmiar
Zdarzenia myszy
Zdarzenia myszy
Programowanie wizualne – Windows Forms
Zdarzenia Click i DoubleClick można (na niektórych obiektach) wywołać za pomocą entera.
Zdarzenia MauseClick i MauseDoubleClick są związane tylko z myszą
Zdarzenia myszy
- Naciśnięcie przycisku myszy
- Puszczenie przycisku myszy
- Wjechanie i zatrzymanie kursora na obiekcie - Wjechanie kursora na obiekt
- Opuszczanie obiektu przez kursor
- Poruszanie się kursora nad obiektem (zdarzenie ciągłe)
Informacje o zdarzeniu – w szczególności:
• który przycisk został naciśnięty,
• jaka jest pozycja myszy można wyodrębnić z obiektu „e”
Zdarzenia Klawiatury
Wizualne systemy programowania
Zdarzenia Klawiatury
- Naciśnięcie klawisza
- Zwolnienie klawisza
- Pełny cykl (naciśnięcie + zwolnienie)
- Obsługa klawiszy modyfikatorów (Alt, Ctrl, Shift)
Zdarzenia Klawiatury
Programowanie wizualne – Windows Forms
Odczytanie wartości klawisza z metody KeyPress
W metodzie KeyDown mamy nieco więcej możliwości
Możemy między innymi odczytać klawisze
modyfikatorów.
Zdarzenia Klawiatury
Każdy element (kontrolka) ma swoją własną kolejkę zdarzeń klawiatury.
Zdarzenie przechwytuje ta kontrolka, która posiada „fokus”
Aby zdarzenie zostało dodatkowo przechwycone przez okno główne (Firm1) – należy zmienić jego właściwość KeyPrewview na true