本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!
每一个窗口都是一个窗口类的实例(CreateWindow)。窗口类是一个属性集,是Windows编程中用于创建窗口的模板。每一个窗口类都有一个窗口过程(WndProc),负责处理发送该类窗口的所有消息。
- 中文名
- 窗口类
- 外文名
- Window class
- 类 别
- 编程术语
- 特 点
- 组成窗口
一个应乘地拳少乘只拔用程序煮愚才在创建某个类型的窗口前拘悼,必须首先注册该“窗口类”(Window壳凳s Class)。注意,这里不是捉旬判C++类的类。RegisterClass(RegisterClassEx)把窗口过程、窗口类型以及应凝射其他类型信息和归臭宙要登记的窗口类关联起来。
其定义如下:
typedef struct _WNDCLASSEX {
UINT cbSize; //该结构的字节数
UINT style; //窗口类的风格
WNDPROC lpfnWndProc; //窗口过程
int cbClsExtra;
int cbWndExtra;
HANDLE hInstance; //该窗口类的窗口过程所属的应用实例
HICON hIcon; //该窗口类所用的像标
HCURSOR hCursor; //该窗口类所用的光标
HBRUSH hbrBackground; //该窗口类所用的背景刷
LPCTSTR lpszMenuName; //该窗口类所用的菜单资源
LPCTSTR lpszClassName; //该窗口类的名称
HICON hIconSm; //该窗口类所用的小像标
} WNDCLASSEX;
从“窗口类”的定义可以看出,它包含了一个窗口的重要信息,如窗口风格、窗口过程、显示和绘制窗口所需要的信息,等等。
Windows系统在初始化时,会注册(Register)一些全局的“窗口类”,例如通用控制窗口类。应用程序在创建自己的窗口时,首先必须注册自己的窗口类。