Tworzenie graficznych aplikacji w Visual C++ 6.0
Skrócony słowniczek wybranych podstawowych pojęć
- Aplikacja napuszona nazwa programu.
- Bitmapa
- Fokus wyróżnik tego obiektu występującego w interfejsie programu, który
odbiera zdarzenia. Przenoszenie fokusa między obiektami pozwala przekierowywać
dane wprowadzane przez użytkownika między obiektami interfejsu.
- Ikona
- Kontekst urządzenia
- Mapowanie zdarzeń odwzorowywanie zdarzeń systemowych na procedury (funkcje,
metody - zależnie od systemu) z programu. P. Obsługa zdarzeń.
- MFC Microsoft Foundation Class - zestaw klas do tworzenia interfejsu (i nie tylko)
stworzonych przez Microsoft.
- Obsługa zdarzeń zdefiniowanie procedur (funkcji, metod - zależnie od środowiska)
obsługujących poszczególne zdarzenia. Uwaga: zwykle jest tak, że dopóki nie
zakończy sie obsługa jednego zdarzenia nie może się zacząć obsługa żadnego innego
(w ramach jednego programu, oczywiście pozostałe programy w systemie moga działać
bez zakłóceń). Oznacza to w praktyce, że na czas obsługi zdarzenia interfejs programu
zamiera. Nie ma obowiązku definiowania obsługi wszystkich zdarzeń generowanych
przez system, wystarczy wybrać tylko te, wazne w naszym programie.
Pozostałe będą obsługiwane w standardowy sposób (np. ignorowane).
- Odświeżanie widoku w okienku jeśli część (całość) okienka zostanie
zasłonięta a potem odsłonięta, to trzeba odświeżyć tę część okienka na ekranie,
czyli ją ponownie narysować. System Windows nie robi tego sam (nie przechowuje bitmapy
okienka) lecz generuje zdarzenie Paint. Program obsługujący to zdarzenie rysuje
na nowo zawartość swojego okienka.
- Okienko czym jest okienko każdy widzi.
- Programowanie sterowane zdarzeniami model programowania stosowany we
współczesnych interfejsach programów. Porgramy sterowane zdarzeniami nie wykonują
od początku do końca po kolei swoich instrukcji, lecz czekają na nastąpienie
jakiegoś zdarzenia (polegającego np. na nacisnięcia klawisza) i wówczas
wykonują związaną z tym zdarzeniem akcję.
- Uchwyt
- Zdarzenie fakt godny uwagi z punktu widzenia systemu operacyjnego lub
programu, zwykle związany z interfejsem graficznym. Zdarzeniem jest np. kliknięcie
myszką lub nacisnięcie przycisku na klawiaturze. Są też zdarzenia bardziej złożone,
takie jak rozpoczęcie/zakończenie operacji przeciągania czy zmiana rozmiaru okienka.
Spis wybranych podstawowych typów z Visual C++
- HICON uchwyt do ikonki.
- LPCSTR 32-bitowy wskaźnik do stałego napisu.
- UINT liczba całkowita bez znaku (32-bitowa).
Spis wybranych podstawowych klas z Visual C++
- CDC klasa opisująca kontekst urządzenia.
- CRect klasa reprezentująca prostokąt.
- CString klasa implemetująca napisy.
- CWnd podstawowa klasa opisująca okienka.
- CWinApp podstawowa klasa z której wyprowadza się obiekt programu.
Spis wybranych podstawowych funkcji z Visual C++
- CWinApp* AfxGetApp( )
Daje wskaźnik do obiektu klasy CWinApp reprezentującego bieżący program.
- int GetSystemMetrics(int nIndex)
- nIndex indeks pobieranej informacji.
Odczytuje (najróżniejsze) informacje systemowe. Zwykle są to rozmiary
(podawane w pikselach). Np. dla indeksu SM_CXICON podaje domyślną szerokość
ikonek (a dla SM_CYICON wysokość). funkcja LoadIcon potrafi ładować tylko
ikony tego rozmiaru. Podobne informacje można zdobyć (i ustawić) używając
SystemParametersInfo.
Spis wybranych podstawowych metod z Visual C++
- void CWnd::GetClientRect(LPRECT lpRect) const;
- lpRect struktura opisujaca prostokąt, może być typu CRect.
Przekazuje współrzędne obszaru klienta bieżącego okienka.
- CDC* CWnd::GetDC()
Daje wskaźnik (lub NULL jeśli się nie powiedzie) do kontekstu urządzenia obszaru klienta bieżącego okienka.
- BOOL CDC::DrawIcon(int x, int y, HICON hIcon)
BOOL CDC::DrawIcon(POINT point, HICON hIcon)
- x, y, point współrzędne (lewy górny róg) miejsca, gdzie ma być narysowana ikonka.
- hIcon uchwyt do ikonki
Rysuje we wskazanym miejscu wskazaną ikonkę używając bieżącego kontekstu urządzenia.
Wynik mówi, czy operacja się w pełni powiodła.
- HICON CWinApp::LoadIcon(LPCTSTR lpszResourceName) const
HICON CWinApp::LoadIcon(UINT nIDResource) const;
- lpszResourceName napis będący nazwą zasobu ikonki,
- nIDResource identyfikator zasobu ikonki.
Ładuje ikonkę z pliku exe aplikacji (o ile nie jest już załadowana, wpp
tylko daje uchwyt), jako wynik daje uchwyt do załadowanej
ikonki (lub NULL jeśli ładowanie się nie powiedzie).
- int CWnd::MessageBox(LPCTSTR lpszText, LPCTSTR lpszCaption=NULL, UINT nType=MB_OK )
- lpszText napis do wypisania w okienku.
- LPCTSTR napis do wypisania jako tytuł okienka.
- ntype określa rodzaj wyświetlanej ikony i zestaw przycisków (np. MB_OK oznacza,
że będzie tylko przycisk OK).
Wyswietla okienko ze wskazanym komunikatem.
- int CWnd::ReleaseDC(CDC* pDC)
- pDC wskaźnik do zwalnianego kontekstu.
Zwalnia wskazany kontekst urządzenia (należy zwalniać wszystkie przydzielane sobie konteksty).
Wynik mówi o tym, czy operacja się powiodła.