窗口类结构体成员详细说明

1614 人浏览 | 时间: 2015-06-25 17:55:05 | 作者: codexia

    一个类结构中至少要三个成员赋值:类名、窗口过程地址和实例句柄。必须初始化所有未使用的成员为NULL或者0。
    WNDCLASSEX结构包含窗口类的信息。WNDCLASSEX结构类似于WNDCLASS结构。有两种差异。WNDCLASSEX包括了cbSize 成员,它指定的结构体大小;hIconSm 成员,是一个与窗口类相关的小图标的句柄。所以,尽量使用WNDCLASSEX作为类结构体。

typedef struct {
  UINT      cbSize;//结构体大小,扩展的
  UINT      style;//窗口类风格
  WNDPROC   lpfnWndProc;//窗口过程函数指针
  int       cbClsExtra;//类额外字节
  int       cbWndExtra;//窗口额外字节
  HINSTANCE hInstance;//程序实例
  HICON     hIcon;//窗口图标
  HCURSOR   hCursor;//光标
  HBRUSH    hbrBackground;//背景
  LPCTSTR   lpszMenuName;//菜单或者子窗口
  LPCTSTR   lpszClassName;//类名
  HICON     hIconSm;//窗口小图标,扩展的
} WNDCLASSEX, *PWNDCLASSEX;
     这个结构体就是之前提到的窗口类的最原始的模板了。现在就一睹真容啦。这个结构体包含了窗口风格需要的所有东西。当然,有人还会疑惑,就是,注册窗口类时传了一大堆的参数,最后创建窗口时还有传入窗口大小位置等信息,为什么不都放在这里呢?其实这个很简单就理解了。这是一个类型模板,具体的窗口还要基于这个结构体来衍生类型的,既然是类型,当然不能含有决定窗口具体的信息的,只能决定窗口的风格,就是窗口的样式。而创建窗口时大小和位置则是具体的窗口的状态,不算是样式。怎么说都是不能将所有信息都放在窗口类的。
    下面介绍每个成员的作用:
cbSize成员:
    这是一个无符号

请微信扫码阅读。
为防止恶意爬虫,
已开启反爬机制,
理解哟~~~~
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0