社区
C++ 语言
帖子详情
WTL最简单窗口
冰做的夏天
2013-06-18 08:30:16
我在定义窗口类的时候,写了DECLARE_FRAME_WND_CLASS(_T("First Wtl Window"),IDR_MAINFRAME);
为什么运行显示出来的窗口并没有窗口名?
...全文
50
2
打赏
收藏
WTL最简单窗口
我在定义窗口类的时候,写了DECLARE_FRAME_WND_CLASS(_T("First Wtl Window"),IDR_MAINFRAME); 为什么运行显示出来的窗口并没有窗口名?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
冰做的夏天
2013-06-18
打赏
举报
回复
引用 1 楼 xiaohuh421 的回复:
这里是类名, 而不是窗口标题名.
So ga!谢谢~
xiaohuh421
2013-06-18
打赏
举报
回复
这里是类名, 而不是窗口标题名.
WTL
8.1 界面开发库
简介
WTL
是 Windows Template Library 的缩写,由微软的ATL(Active Template Library) 小组开发,主要是基于 ATL 对Win32API 的封装。从 2.0 后,功能逐步完善,成为了一个完整的支持
窗口
的框架(windows framework)。
WTL
功能不如MFC完善,但是比 MFC 更小巧,不依赖 MFC 的DLL。
WTL
不是微软的正式产品,没有微软的官方支持。
WTL
有什么? 它给各种类型的应用程序提供了一个基本的框架.注意,虽然没有MFC那样的文档/视结构,但是有视(views). 在
WTL
有大量的代码来管理视,而且加入自己的代码也很容易.
WTL
有AppWizard,可以生成SDI,MDI和多线程SDI程序多线程SDI跟IE或Windows Explorer很像.它看起来是打开了多个程序实例,实际上这些
窗口
都是属于一个进程的). 另外,程序可以是基于对话框的,也可以是基于视的.视可以是基于CWindowImpl的,也可以是基于控件,甚至是IE里的一个HTML页.可以选择程序是否需要一个rebar, command bar (CE-like), toolbar 和/或status bar.另外,程序可以支持ActiveX控件,以及成为一个COM服务器. 这里有几个关于视的选项.
WTL
提供splitter
窗口
类(这样在一个视里您可以有两个
窗口
)和scroll
窗口
类(这样您的
窗口
可以比它显示的"视"小).
WTL
也有个类似MFC的UpDateUI的东西,但是它们不是很一样 - 主要的区别是您需要把需要更新的项用宏映射标注出来,然后您在您的类里加入执行UpdateUI的代码. DDX/DDV在
WTL
也支持,同样类似MFC,但有不同. 必须加一个宏映射来实现DoDataExchange,然后加入调用它的代码. 现在
WTL
也有GDI类了.然而,HDC的封装类就像CWindow一样,只进行了很
简单
的封装 - 它几乎没有加入任何新的功能.不过,在
WTL
,你可以得到播放meta文件和OpenGL支持. 最有价值的我猜应该是打印机DC的那些继承类 -
WTL
有打印机支持,甚至打印预览. 当然也有GDI对象的封装. 诸如画笔,画刷,区域等.
WTL
对所有的Win32 (和W2K) 通用对话框进行了封装.同样尽管
简单
,但是它的确使请求字体或者文件变的非常的
简单
. 合成了旧的AtlControls.h,新加了一些封装类. 这些封装类封装了W2K控件,以及一些不属于Win32的"控件",像Command Bar, bitmap button, hyperlink 和 wait cursor.
WTL
最终把消息分离带入了ATL! 一些新的MSG映射宏将消息分离,调用您类里的消息处理函数.消息处理函数的参数的值是从消息分离得到的.唯一令人头痛的是,您需要查看头文件以确定函数参数的意义. 最后,
WTL
还有一些实用类.最重要的是CString. 不错,它是从MFC克隆得到的(copy on write),具有(在我知道的范围内)MFC版本的所有方法.还有查找文件的API的封装类,以及CRect, CSize and CPoint.
WTL
中没有什么? 没有Document支持
WTL
提供了frame和view,但是没有document。
WTL
所关注的是用户界面,而document是不可见的,所以它不是
WTL
关心的范围。 没有Active Document支持 没有ISAPI支持 没有WinInet支持 没有对线程和同步进行包装 没有数据库支持 总结 如果打算写一个Win32 界面程序,我建议您在考虑MFC之前,先试试
WTL
.使用
WTL
来写您的代码, 程序将变得小巧些,也更有效率些.使用
WTL
, 还将得到ATL支持COM好处.可以在2000年一月份的平台SDK中找到
WTL
.在MSI选项页的Source Code section下. 无 。
WTL
教程中文版资料
WTL
在开发者之间的悄悄传播已经超过一年了, 传闻它是基于ATL的,并在微软内部使用.这理所当然的引起了ATL开发者社区的注意.这些人从ATL1.1开始,就一直为ATL控件书写UI代码,但是他们发现,他们的所写的代码常常就是纯的Win32 GDI代码.我告诉您,
WTL
并没有多大不同.是不是让人失望? 不,因为ATL只是对COM进行了
简单
的封装,这也是ATL的强大之处. 是的,写ATL您必须通晓COM. 您在ATL上额外花费的功夫跟您学习COM所作的努力比起来,简直微不足道.这跟那些需要把主要精力花费在学习类库本身,忽略COM的库是完全不同的.
WTL
与此类似.您需要懂得Win32
窗口
技术和GDI.只要您懂得,学习
WTL
就似清风抚面,再
简单
不过了.如果您不懂 这些,那么您最好使用VB来写UI代码.
使用
WTL
进行Windows桌面应用开发-第二部
1. 在第一部基础上增加更深入的内容,比如
WTL
提供的标准Win32
窗口
和自定义
窗口
的使用方式.2. 涉及到一些项目开发难题的
窗口
自定义的解决方案。3. 涉及到Gdiplus绘图的项目开发难题的一些解决方案。4. 推荐使用的第三方跨平台库, 虽然
WTL
是基于Windows的,但是不妨碍我们使用第三方的库进行开发,减少跨平台开发的学习成本。5.
WTL
是对Win32
窗口
的薄封装,库是原微软员工开发,是MFC的替代选择。掌握了
WTL
表示你已经基本掌握了Win32的
窗口
编程.6. 使用
WTL
库完全使用C++开发,不需要其他编程语言,减少学习成本和复杂度,整个
WTL
是开源可控的。7.
WTL
库只能使用VS2005以上版本开发, 因为它依赖ATL库. 不同的VS版本对应的atl版本不一致,建议使用VS2010以上版本开发.
WTL
起步-玩转图形界面
WTL
是2000 年 1 月随 Windows 的平台 SDK 始发的。起初是 ATL 项目组写的一个基于ATL 的,封装了相关win32
窗口
API 的例程。自 ATL2.0 开始,ATL 就已经有一些
简单
的相关
窗口
函数的封装类,例如:CWindow,CWindowImpl 和 CDialogImpl。然而,当我们比较 MFC 的界面相关部分的功能时,ATL 对界面编程的支持简直就是一个玩笑。甚至 到了 ATL3.0,ATL 仍然没有对诸如 MDI,命令条,DDX,打印,GDI 等流行功能的支持。最被人喜爱的 MFC 的 CString 也没被支持进来。没有对这些功能的支持,ATL 很难满足拥有压倒性数量的使用 MFC 的编程人员的需求。
WTL
就是 ATL 项目组认为ATL 风格的
窗口
编程模型应该有的样子
C++中
WTL
_和_MFC_编程
目录
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue
WTL
for MFC Programmers, Chinese Version Prologue ................................ ........................... 6
WTL
for MFC Programmers, Part I - ATL GUI Classes ................................ ........................... 8 README.TXTREADME.TXT README.TXTREADME.TXT README.TXTREADME.TXT ................................ ................................ ................................ ......................... 8 对本系列文章的总体介绍 对本系列文章的总体介绍 对本系列文章的总体介绍 ................................ ................................ ................................ ....... 9 对第一章的
简单
介绍 对第一章的
简单
介绍 ................................ ................................ ................................ ............. 11 ATL ATL ATL 背景知识 ................................ ................................ ................................ ....................... 11 ATL 和
WTL
的发展历史 ................................ ................................ ......................... 12 ATL-style 模板 ................................ ................................ ................................ ............. 12 ATL ATL ATL
窗口
类 ................................ ................................ ................................ ........................... 15 定义一个
窗口
的实现 定义一个
窗口
的实现 ................................ ................................ ................................ ............. 17 填写消息映射链 ................................ ................................ ................................ ............. 19 高级消息映射链和嵌 高级消息映射链和嵌 入类 ................................ ................................ ................................ ..... 21 ATLATL 程序的结构 ................................ ................................ ................................ .................... 24 ATLATL 中的对话框 ................................ ................................ ................................ .................... 27
WTL
for MFC Programmers, Part II -
WTL
GUI Base Classes ................................ ............. 32 对第二部分的介绍 对第二部分的介绍 ................................ ................................ ................................ ................. 32
WTL
WTL
WTL
WTL
总体印象 ................................ ................................ ................................ ...................... 32 开始写
WTL
WTL
WTL
程序 ................................ ................................ ................................ .................. 33
WTL
WTL
WTL
WTL
对消息映射的增强 ................................ ................................ ................................ ...... 36 从
WTL
WTL
WTL
的应用程序生成向导能得到什么 的应用程序生成向导能得到什么 的应用程序生成向导能得到什么 ................................ ................................ .......... 42 使用向导的整个过程 ................................ ................................ ................................ ..... 42 查看生成的代码 ................................ ................................ ................................ ............. 44 CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop 的内部实现 ................................ ................................ ................................ .. 47 CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl 的内部实现 ................................ ................................ ......................... 48 回到前面的时钟程序 回到前面的时钟程序 ................................ ................................ ................................ ............. 50 界面元素的自动更新 界面元素的自动更新 (UI Updating)(UI Updating)(UI Updating)(UI Updating) (UI Updating) (UI Updating)(UI Updating)(UI Updating)(UI Updating) (UI Updating) ................................ ................................ ...................... 51 添加控制时钟的新菜单项 ................................ ................................ ............................. 52 调用 UIEnable()................................ ................................ ................................ ............ 53 消息映射链中最后需要注意的地方 消息映射链中最后需要注意的地方 消息映射链中最后需要注意的地方 消息映射链中最后需要注意的地方 ................................ ................................
C++ 语言
64,282
社区成员
250,470
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章