Шаг 71 - CWnd

71_1.gif (1614 b)

Класс CWnd обеспечивает основные функциональные возможности всех классов окна в MFC.

Объект CWnd отличен от окна Windows, но они связаны. Объект CWnd создается конструктором а разрушается деструктором. Окно Windows, с другой стороны является внутренней структурой Windows которая создается методом Create и разрушается CWnd виртуальным деструктором. Функция DestroyWindow уничтожает окно Windows без того, чтобы уничтожать объект класса CWnd.

Класс CWnd и механизм карты сообщения скрывает функцию WndProc. Входящие уведомительные сообщения Windows автоматически направлены через карту сообщения к соответствующим OnMessage методам CWnd. Вы перегружаете метод OnMessage, чтобы обработать специфическое сообщение элемента в ваших полученных классах.

Класс CWnd также позволяет Вам создавать дочернее окно Windows для Вашего приложения. Получите класс из CWnd, затем добавьте переменные к полученному классу, чтобы сохранить данные, специфические для вашего приложения. Примените методы обработчика сообщения и карту сообщения в полученном классе, чтобы определить, что будет происходить, когда сообщения направлены к окну.

Вы создаете дочернее окно в двух шагах. Сначала, вызовите конструктор CWnd, чтобы создать объект CWnd, затем вызывать метод Create, чтобы создать дочернее окно и присоединить его к объекту CWnd. Когда пользователь завершает ваше дочернее окно, уничтожьте объект CWnd, или вызовите метод DestroyWindow, чтобы удалить окно и уничтожать структуры данных.

MFC предоставляет классы полученные из CWnd, чтобы обеспечить специфические типы окна. Многие из этих классов, включая CFrameWnd, CMDIFrameWnd, CMDIChildWnd, CView, и CDialog, разработаны для дальнейшего наследования. Классы управления, полученные из CWnd, типа CButton, могут использоваться непосредственно или могут использоваться для дальнейшего наследования.

#include <afxwin.h>

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 22.12.2001