Utworzenie okna Windows

Program ten rejestruje, tworzy i pokazuje okno systemu Windows w WinAPI. Dodatkowo, przytrzymując LPM można rysować zwykłym pędzlem po oknie.

kod w cpp

W linijkach 7-10 kodu tworzę klasę i uchwyt do okna. Funkcja WindowEventProc() jest najważniejszą częścią programu - zamjuje się przejmowaniem i procesowaniem komunikatów z okna. W zmiennej uMsg przechowuję komunikat aktualnie otzymany, a switch wydziela odpowiednie działania po otrzymaniu takowego. W tym konkretnym programie: WM_LBUTTONDOWN czyli naciśnięcie LPM przesuwa pędzel do kursora, WM_MOUSEMOVE czyli ruch myszą rysuje linię od położenia pędzla do obecnej pozycji myszy (oczywiście tylko kiedy LPM jest wciśnięty), a WM_LBUTTONUP czyli puszczenie przycisku myszy zwalnia pędzel.

Funkcja WinMain() odpowiednikiem funkcji main(). W niej rejestrowana jest klasa okna i wypełniane są wszystkie jej pola: funkcja obsługująca komunikaty, nazwa klasy okna, kursor, ikona, styl, tło okna itd. Na koniec, funkcją CreateWindowEx() tworzone jest w końcu to okno, należy podać tam klasę okna, tekst na pasku, styl, współrzędne x i y okna, wymiary czy pasek menu. Na końcu funkcji WinMain() mamy jeszcze pokazanie okna oraz przekazywanie komunikatów do funkcji WindowEventProc() poprzez odpowiednią pętlę komunikatów.



Dokumentacja WinAPI