注册窗口类
Windows 传统编程中的窗口“类”定义了可在其中创建任何数量的窗口的“类”(不是 C++ 类)的特征。 此类型的类是一个用于创建窗口的模板或模型。
Windows 传统程序中的窗口类注册
在 Windows 的传统程序中,如果没有 MFC,则可以在其“窗口过程”或“WndProc
”中将所有消息处理到窗口。WndProc
通过“窗口类注册”过程与窗口相关联。 主窗口在 WinMain
函数中注册,但其他窗口类可以在应用程序中的任何位置注册。 注册取决于包含指向 WndProc
函数的指针的结构以及光标、背景画笔等的规范。 在之前对 RegisterClass
函数的调用中,结构将作为一个参数与类的字符串名称一起传递。 因此,注册类可以由多个窗口共享。
MFC 程序中的窗口类注册
相反,大多数窗口类注册活动会在 MFC 框架程序中自动完成。 如果使用 MFC,则通常使用类继承的常规 C++ 语法从现有库类派生 C++ 窗口类。 框架仍使用传统的“注册类”,并且提供了若干在需要时会为您注册的标准窗口类。 可以通过调用 AfxRegisterWndClass 全局函数,然后将注册的类传递给 CWnd
的 Create
成员函数,从而注册其他注册类。 正如这里所述,Windows 中的传统“注册类”不会与 C++ 类混淆。
有关详细信息,请参阅技术说明 1。