Krzysztof Mossakowski
Programowanie w środowisku Windows
2003 - Zadania
Aplikacja MDI
Wersja A
Odbijanie piłeczek
Wzór dla programu
Okna robocze:
ruch piłeczki
automatyczne odbijanie piłeczki od brzegów okna
po przekroczeniu czarnego obszaru na dole okna:
trafiając na paletkę - odbicie i zwiększenie liczby sukcesów w oknie
nie trafiając na paletkę - narysowanie piłeczki w kolorze czarnym i zwiększenie liczby porażek w oknie
punkt startowy piłeczki - lewy górny róg okna
prędkość losowana po każdej porażce
ruch paletki
wyłącznie poziomy
pozycja paletki określona przez poziomą współrzędną pozycji myszy w obszarze klienta okna
bitmapa paletki
każde okno robocze niezależne od innych
niezależne liczenie sukcesów i porażek, niezależna prędkość i pozycja piłeczki
UWAGA: nie zakładać żadnych ograniczeń na liczbę okien roboczych
bitmapa tła
(rysowana sąsiadująco poza czarnym obszarem na dole okna)
w tytule okna roboczego liczba sukcesów i porażek
po uruchomieniu aplikacji automatycznie stworzyć 4 okna robocze i umieścić je obok siebie
Menu:
'Nowe okno' - utworzenie nowego okna roboczego
'Okna':
'Sąsiadująco w pionie' - standardowy mechanizm MDI
'Sąsiadująco w poziomie' - standardowy mechanizm MDI
lista wszystkich otwartych okien - standardowy mechanizm MDI
'Koniec' - zakończenie pracy aplikacji
Pożądane cechy aplikacji MDI
okno klienta MDI powinno mieć czarne tło
standardowa obsługa skrótów klawiszowych wykorzystywanych w aplikacji MDI (m.in. Ctrl+F6, Shift+Ctrl+F6)
standardowa obsługa maksymalizacji, minimalizacji i odtwarzania rozmiaru i położenia okien roboczych
Sugestie:
"MDICLIENT", CLIENTCREATESTRUCT
CreateMDIWindow()
SetWindowLong( _, GWL_WNDPROC, _ ), CallWindowProc()
DefFrameProc(), DefMDIChildProc
SetWindowLong( _, GWL_USERDATA, _ ), GetWindowLong()
WM_MDITILE
CreatePatternBrush()