wtl
文章平均质量分 75
zcxin
这个作者很懒,什么都没留下…
展开
-
深入剖析WTL—WTL消息循环机制详解
WTL消息循环机制实现了消息过滤和空闲处理机制。消息过滤首先看一下CMessageLoop的核心逻辑CMessageLoop.Run()的代码:int CMessageLoop.Run(){ BOOL bDoIdle = TRUE; int nIdleCount = 0; BOOL bRet; for(;;) { while(!::PeekMessage(转载 2013-10-23 00:15:55 · 2454 阅读 · 0 评论 -
WTL for MFC Programmers, Chinese Version Prologue
我一直在寻找这样一个类库:他对Windows的窗口提供面向对象的封装,有灵活的消息响应机制和比较完备的界面框架解决方案,对标准控件提供简练实用的封装,支持操作系统的新特性,支持功能扩充和二次开发,有代码自动生成向导机制,生成的程序使用较少的系统资源,最后是有完全的代码支持和文档支持。你会说那就用MFC吧!是的,我一直使用MFC,但我对MFC已经越来越厌倦了。陈旧的类库使得它无法支持转载 2013-10-24 01:54:56 · 846 阅读 · 0 评论 -
深入剖析WTL——如何封装Windows界面程序
首先还是让我们来看看WTL是怎样封装应用程序线程的。 和ATL类似,WTL使用一个_Module全局变量来保存全局数据,并通过它来引用应用程序级的代码。在WTL中,该变量是CAppModule或CServerAppModule的实例。后者通常作为COM服务器的应用程序。每个应用程序都有一个或多个界面线程组成。首先剖析一下WTL是怎样管理只有一个界面线程的(除了Mutli-SDI转载 2013-10-23 01:02:25 · 1184 阅读 · 0 评论 -
WTL for MFC Programmers, Part V - Advanced Dialog UI Classes
第五章介绍在上一篇文章我们介绍了一些与对话框和控件有关的WTL的特性,它们和MFC的相应的类作用相同。本文将介绍一些新类实现高级界面特性新类:控件自画和自定外观控件,新的WTL控件,UI updating和对话框数据验证(DDV)。特别的自画和外观定制类由于自画和定制外观控件在图形用户界面中是很常用的手段,所以WTL提供了几个嵌入类来完成这些令人厌烦的工作。我接着就会介绍它转载 2013-10-30 00:58:17 · 1262 阅读 · 0 评论 -
WTL for MFC Programmers,Part IV - Dialogs and Controls
对第四章的介绍MFC 的对话框和控件的封装真得可以节省你很多时间和功夫。没有MFC对控件的封装,你要操作控件就得耐着性子填写各种结构并写很多的SendMessage调用。MFC还提供了对话框数据交换(DDX),它可以在控件和变量之间传输数据。WTL 当然也提供了这些功能,并对控件的封装做了很多改进。本文将着眼于一个基于对话框的程序演示你以前用MFC实现的功能,除此之外还有WTL消息处理的增转载 2013-10-28 23:36:56 · 1061 阅读 · 0 评论 -
WTL for MFC Programmers, Part I - ATL GUI Classes
README.TXT在你开始使用WTL或着在本文章的讨论区张贴消息之前,我想请你先阅读下面的材料。你需要开发平台SDK(Platform SDK)。你要使用WTL不能没有它,你可以使用在线升级安装开发平台SDK,也可以下载全部文件后在本地安装。在使用之前要将SDK的包含文件(.h头文件)和库文件(.Lib文件)路径添加到VC的搜索目录,SDK有现成的工具完成这个工作,这个工具位于开转载 2013-10-24 03:37:05 · 1500 阅读 · 0 评论 -
WTL for MFC Programmers, Part II - WTL GUI Base Classes
对第二部分的介绍好了,现在正式开始介绍WTL!在这一部分我讲的内容包括生成一个基本的主窗口和WTL提供的一些友好的改进,比如UI界面的更新(如菜单上的选择标记)和更好的消息映射机制。为了更好地掌握本章的内容,你应该安装WTL并将WTL库的头文件目录添加到VC的搜索目录中,还要将WTL的应用程序生成向导复制到正确的位置。WTL的发布版本中有文档具体介绍如何做这些设置,如果遇到困难可以查看这些转载 2013-10-24 22:39:25 · 1179 阅读 · 0 评论 -
WTL for MFC Programmers, Part VI - Hosting ActiveX Controls
介绍在第六章,我将介绍ATL对在对话框中使用ActiveX控件的支持,由于ActiveX控件就是ATL的专业,所以WTL没有添加其他的辅助类。不过,在ATL中使用ActiveX控件与在MFC中有很大的不同,所以需要重点介绍。我将介绍如何包容一个控件并处理控件的事件,开发ATL应用程序相对于MFC的类向导来说有点不方便。在WTL程序中自然可以使用ATL对包容ActiveX控件的支持。转载 2013-10-30 01:34:08 · 1224 阅读 · 0 评论 -
WTL for MFC Programmers, Part III - Toolbars and Status Bars
对第三部分的介绍自从作为Windows 95的通用控件出现以来,工具条和状态条就变成了很普遍的事物。由于MFC支持浮动的工具条从而使它们更受欢迎。随着通用控件的更新,Rebars(最初被称为Coollbar)使得工具条有了另一种展示方式。在第三部分,我将介绍WTL对这些控制条的支持和如何在你的程序中使用它们。主窗口的工具条和状态条CFrameWindowImpl有三个HWN转载 2013-10-27 01:30:59 · 1122 阅读 · 0 评论 -
深入剖析WTL——Win32模型
WTL 是Windows Template Library的缩写。最初,WTL是由微软的ATL(Active Template Library)小组成员开发的一个SDK例子。主要是基于ATL的对Win32 API的封装。从2.0后,功能逐步完善,成为了一个完整的支持窗口的框架(windows framework)。与MFC相比较,功能并没有MFC完善。比如MFC支持doc/view架构转载 2013-10-23 00:28:25 · 1446 阅读 · 0 评论 -
深入剖析WTL—WTL框架窗口分析
WTL的基础是ATL。WTL的框架窗口是ATL窗口类的继承。因此,先介绍一下ATL对Windows窗口的封装。 由第一部分介绍的Windows应用程序可以知道创建窗口和窗口工作的逻辑是: 1 注册一个窗口类 2 创建该类窗口 3 显示和激活该窗口 4 窗口的消息处理逻辑在窗口函数中。该函数在注册窗口类时指定。 从上面的逻辑可以看出,要封装窗口主要需解转载 2013-10-23 01:42:02 · 2589 阅读 · 0 评论 -
WTL for MFC Programmers, Part VII - Splitter Windows
介绍随着使用两个分隔的视图管理文件系统的资源管理器在Windows 95中第一次出现,分隔窗口逐渐成为一种流行的界面元素。MFC也有一个复杂的功能强大的分隔窗口类,但是要掌握它的用法确实有点难,并且它和文档/视图框架联系紧密。在第七章我将介绍WTL的分隔窗口,它比MFC的分隔窗口要简单一些。WTL的分隔窗口没有MFC那么多特性,但是易于使用和扩展。本章的例子工程是用WTL重写的Clip转载 2013-11-07 16:11:44 · 940 阅读 · 0 评论