首页  >   经验  >   Windows零基础入门:2.10 三种窗口类的深入全面详细分析

Windows零基础入门:2.10 三种窗口类的深入全面详细分析

查看 codexia 的博客 2015-08-20 21:22:13 2593 会员文章,禁止转载
Windows   入门  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介由前面课程我们知道了,窗口类是有三种类型的。这节课就是详细介绍这三种窗口类类型的。扩展到皮肤库的原理分析和系统主题的原理分析。
    由前面课程我们知道了,窗口类是有三种类型的。这节课就是详细介绍这三种窗口类类型的。扩展到皮肤库的原理分析和系统主题的原理分析。
三种类型分别如下:
1.系统窗口类
2.应用全局窗口类
3.应用局部窗口类
----------------------------------------------
1.系统窗口类
    下表是可供所有进程使用的公用系统窗口类:
Button        按钮控件类
ComboBox  组合框控件类
Edit           编辑框控件类
ListBox      列表框控件类
MDIClient   MDI窗口类 
ScrollBar   滚动条控件类
Static       静态控件类

    下面是系统内部使用系统窗口类:
ComboLBox  包含在组合框中的列表框控件类 
DDEMLEvent 动态数据交换管理库事件类
Message    消息窗口类
#32768     菜单类
#32769     桌面窗口类
#32770     对话框类
#32771     任务切换窗口类
#32772     图标标题类
 
    系统窗口类是由系统创建和维护的,在任何一个线程请求了公用系统窗口类时,也就是用系统窗口类名来创建窗口时,这个时候,系统就创建了这个窗口类。然后再复制一份到请求的进程内存中。其他进程的线程再用这个窗口类创建,则直接复制给他就行了。
    以上列出的七种可用的系统窗口类就是我们常说的标准控件或者叫做公共控件。公共一个概念就是相对于系统内部使用的系统窗口类而言的。第二个部分列出来了系统内部使用的窗口类,我们不必去研究,这里只是作为知识的完整性,列出来。让大家有个直观的认识。你可以看到下面几个,甚至都没有名字,直接用数字编号做名字。
    我们使用公共控件时就是直接用这个窗口类名来创建控件的过程。具体的控件介绍和使用,在后续课程会讲。这里就是让你对控件的来源有个清晰的了解。
    这几个窗口类的名字是不可以乱写的,固定的,必须这么写。而且系统窗口类设置的窗口过程也是预先就设定好的。你要改变,就要子类化来修改。这个在上节课做了详细的介绍。
    相对于系统窗口类来说,应用程序的窗口类类名和窗口过程等都是我们自己的确定,我们得到了这些自由,也就要付出完全要自己从头到尾来管这个窗口类的代价。当然,我在学习应用程序窗口类的过程也是促进对于窗口类的了解。因为过程都是一样的,只是系统窗口类帮我们做了很多事情,因此我们也少接触了很多东西。应用程序窗口类,就展现了所有的细节。

2.应用全局窗口类和应用局部窗口类
    全局窗口类,可以由exe的线程来创建,也可以由dll模块来创建。这个对于应用程序局部窗口类来说也是一样的。区别就在于创建这个窗口类时给窗口类指定的标志不一样罢了。这个标志就是CS_GLOBALCLASS。CS是Class Style(类风格)的缩写。GLOBALCLASS就是Global Class的大写,表示全局类的意思。合起来就表示全局类的类风格。只要将这个窗口类的风格标志加入到自己创建的窗口类中,就可以了。代码演示如下:
1.微信扫码
2.点击按钮,粘贴命令
自动刷新 手动刷新
命令:rd 9M4mE 复制
提示:如果您发送了命令,自动刷新会展开全文。自动刷新最多60秒,超过60秒请点击手动刷新。
创作不易,汗水不止!为防止劳动果实被爬虫窃取,开启了反爬机制,需要您发送命令继续阅读。取关会再次出现此提示。一段时间后出现此提示,请再次发送即可。如有问题,请加客服微信Freeme007处理。感谢您的理解。
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

分享到:
分享文章[Windows零基础入门:2.10 三种窗口类的深入全面详细分析]到QQ空间

Win32课程菜单

猜您感兴趣