CWnd——微软基础类库中的窗口类
CObject
└CCmdTarget
└CWnd
CWnd 类提供了微软基础类库中所有窗口类的基本功能。
CWnd 对象与 Windows 的窗口不同,但是两者有紧密联系。CWnd 对象是由 CWnd 的
构造函数和析构函数创建或销毁的。另一方面,Windows 的窗口是 Windows 的一种内
部数据结构,它是由 CWnd 的 Create 成员函数创建的,而由 CWnd 的虚拟析构函数销
毁。DestroyWindow 函数销毁 Windows 的窗口,但是不销毁对象。
CWnd 类和消息映射机制隐藏了 WndProc 函数。接收到的 Windows 通知消息通过消息
映射被自动发送到适当的 CWnd OnMessage 成员函数。你可以在派生类中重载
OnMessage 成员函数以处理成员的特定消息。
CWnd 类同时还使你能够为应用程序创建 Windows 的子窗口。先从 CWnd 继承一个
类,然后在派生类中加入成员变量以保存与你的应用程序有关的数据。在派生类中实现消
息处理成员函数和消息映射,以指定当消息被发送到窗口时应该如何动作。
你可以经过两个步骤来创建一个子窗口。首先,调用构造函数 CWnd 以创建一个 CWnd
对象,然后调用 Create 成员函数以创建子窗口并将它连接到 CWnd 对象。
当用户关闭你的子窗口时,应销毁 CWnd 对象,或者调用 DestroyWindow 成员函数以
清除窗口并销毁它的数据结构。
在微软基础类库中,从 CWnd 派生了许多其它类以提供特定的窗口类型。这些类中有许
多,包括 CFrameWnd,CMDIFrameWnd,CMDIChildWnd,CView 和 CDialog,被用来进
一步派生。从 CWnd 派生的控件类,如 CButton,可以被直接使用,也可以被进一步派
生出其它类来。
#include <afxwin.h>
请参阅:CFrameWnd, CView
CWnd 类的成员
初始化 对话框项函数 初始化消息处理函数