Obiekty okien

MFC dostarcza klasę CWnd , aby hermetyzować HWND uchwyt okna. Obiekt CWnd jest obiektem okna języka C++, różni się od HWND tego, który reprezentuje okno systemu Windows, ale zawiera go. Użyj CWnd polecenia , aby utworzyć własne klasy okien podrzędnych lub użyć jednej z wielu klas MFC pochodzących z CWndklasy . Klasa CWnd jest klasą bazową dla wszystkich okien, w tym okien ramowych, okien dialogowych, okien podrzędnych, kontrolek i pasków sterowania, takich jak paski narzędzi. Dobre zrozumienie relacji między obiektem okna języka C++ a HWND ma kluczowe znaczenie dla efektywnego programowania za pomocą MFC.

MFC zapewnia pewne domyślne funkcje i zarządzanie oknami, ale możesz uzyskać własną klasę i CWnd użyć jej funkcji składowych, aby dostosować udostępnione funkcje. Okna podrzędne można utworzyć, CWnd tworząc obiekt i wywołując jego funkcję Utwórz składową, a następnie dostosuj okna podrzędne przy użyciu CWnd funkcji składowych. Obiekty pochodzące z widoku CView, takie jak widoki formularzy lub widoki drzewa, można osadzać w oknie ramki. Można również obsługiwać wiele widoków dokumentów za pośrednictwem okienek rozdzielanych dostarczanych przez klasę CSplitterWnd.

Każdy obiekt pochodzący z klasy CWnd zawiera mapę komunikatów, za pomocą której można mapować komunikaty systemu Windows lub identyfikatory poleceń na własne programy obsługi.

Ogólna literatura dotycząca programowania dla systemu Windows jest dobrym zasobem do nauki korzystania z CWnd funkcji składowych, które hermetyzują HWND interfejsy API.

Funkcje do obsługi obiektu CWnd

CWnd i jego pochodne klasy okien zapewniają konstruktory, destruktory i funkcje składowe, aby zainicjować obiekt, utworzyć bazowe struktury systemu Windows i uzyskać dostęp do hermetyzowanego HWND. CWnd Udostępnia również funkcje członkowskie, które hermetyzują interfejsy API systemu Windows do wysyłania komunikatów, uzyskiwania dostępu do stanu okna, konwertowania współrzędnych, aktualizowania, przewijania, uzyskiwania dostępu do Schowka i wielu innych zadań. Większość interfejsów API zarządzania oknami systemu Windows, które przyjmują HWND argument, są hermetyzowane jako funkcje członkowskie programu CWnd. Nazwy funkcji i ich parametrów są zachowywane w funkcji składowej CWnd . Aby uzyskać szczegółowe informacje o interfejsach API systemu Windows hermetyzowanych przez CWndprogram , zobacz klasa CWnd.

Komunikaty CWnd i Windows

Jednym z głównych celów CWnd programu jest zapewnienie interfejsu do obsługi komunikatów systemu Windows, takich jak WM_PAINT lub WM_MOUSEMOVE. Wiele funkcji składowych programu CWnd to programy obsługi standardowych komunikatów — te rozpoczynające się od identyfikatora afx_msg i prefiks "Włączone", takie jak OnPaint i OnMouseMove. Obsługa komunikatów i mapowanie obejmuje szczegółowo komunikaty i obsługę komunikatów. Informacje, które istnieją, mają takie same zastosowanie do okien platformy i tych, które tworzysz samodzielnie w celach specjalnych.

Co chcesz dowiedzieć się więcej o

Zobacz też

Windows