首页  >   经验  >   Windows零基础入门:2.15 窗口类使用之窗口类结构体详解

Windows零基础入门:2.15 窗口类使用之窗口类结构体详解

查看 codexia 的博客 2015-09-08 21:48:11 2197 会员文章,禁止转载
Windows   入门  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介本节课详细讲解了窗口类结构体的类型声明、窗口类结构体变量定义以及注册窗口类的相关背景知识,你可以全面的了解一下这个结构体,而不是只是当做一个类型来看待。为什么要用WNDCLASS,不只是设计出来了我们就用。有时候我们需要探究一下设计的初衷,才会发觉它的好处,也能更好的掌握。

    本节课详细讲解了窗口类结构体的类型声明、窗口类结构体变量定义以及注册窗口类的相关背景知识,你可以全面的了解一下这个结构体,而不是只是当做一个类型来看待。为什么要用WNDCLASS,不只是设计出来了我们就用。有时候我们需要探究一下设计的初衷,才会发觉它的好处,也能更好的掌握。

    在《Windows零基础入门:2.14 (1)窗口类使用完整代码演示和详细注释》一节中,对于窗口类的使用代码细节,给出了详细的代码和相应的注释。能帮你看懂这个程序做了些什么。不过,请不要停留于此,这里是很概要性的,所以接下来的几节课将会详细讲述每一个部分。
    我们要先创建一个窗口类结构体变量,然后用结构体变量存储的窗口类信息去注册窗口类,然后就可以用注册好的窗口类来创建窗口。
    而我们要创建窗口类结构体变量,就要使用WNDCLASS结构体类型。实际上,我们还可以用WNDCLASSEX结构体类型来创建。WNDCLASSEX是对WNDCLASS的扩展。WNDCLASSEX比WNDCLASS结构体类型多了两个成员,一个是表示结构体大小的成员,一个是存储小图标的成员hIconSm,就是Small Icon的意思。而中间的一个hIcon图标就是比较大的图标。具体我们将在后面解释。你只要知道,带有EX字样的结构体或者Ex字样的函数都是对原函数的扩展,完成的功能都是一样的。
    下面是WNDCLASS结构体类型的定义,使用typedef重命名结构体类型,命名为WNDCLASS,加上*再命名一个指向结构体类型的指针类型。这是C/C++的基本语法,我想这点基础你应该还是有的。我们课程的零基础是说你对于Windows可以一无所知,但是对于编程语言要有基本的了解哦。

typedef struct tagWNDCLASS {
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCTSTR   lpszMenuName;
  LPCTSTR   lpszClassName;
} WNDCLASS, *PWNDCLASS;

     正如上节课代码中所注释的,这些成员都有各自的意义。每一个结构体成员斗殴代表了窗口类的一个特性。我们为什么要这个结构体类型呢?其实也并不是非要不可的事情。前面课程说了,这个结构体类型,就像是生产窗口类变量的

1.微信扫码
2.点击按钮,粘贴命令
自动刷新 手动刷新
命令:rd eZZd4 复制
提示:如果您发送了命令,自动刷新会展开全文。自动刷新最多60秒,超过60秒请点击手动刷新。
创作不易,汗水不止!为防止劳动果实被爬虫窃取,开启了反爬机制,需要您发送命令继续阅读。取关会再次出现此提示。一段时间后出现此提示,请再次发送即可。如有问题,请加客服微信Freeme007处理。感谢您的理解。
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

分享到:
分享文章[Windows零基础入门:2.15 窗口类使用之窗口类结构体详解]到QQ空间

Win32课程菜单

猜您感兴趣