社区
ATL
帖子详情
用过WTL的进来聊聊,谈谈使用WTL的感受...
xiaohyy
2003-09-16 10:11:26
总之关于WTL的,大家畅所欲言...
虽然WTL没得到为软官方支持,但我还是觉得WTL还是很有前途..
正准备学习ing..
...全文
468
23
打赏
收藏
用过WTL的进来聊聊,谈谈使用WTL的感受...
总之关于WTL的,大家畅所欲言... 虽然WTL没得到为软官方支持,但我还是觉得WTL还是很有前途.. 正准备学习ing..
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaohyy
2003-09-26
打赏
举报
回复
我在win2k下编译WTL7写的代码,不能通过。查了资料才知道wtl的一些东东需要xp的支持。。
xiaohyy
2003-09-24
打赏
举报
回复
希望大家谈谈经验。。偶洗耳恭听。。
LazyCamel
2003-09-22
打赏
举报
回复
正准备学习,可以参考的资料不多,
atEleven
2003-09-20
打赏
举报
回复
>>因此FrameWnd的消息比如菜单消息就只能由FrameWnd自己处理,不能像
>>mfc版本那样可以由Application View 或doc类处理
-----ATL/WTL的MSG_CHAIN可以让消息由其他类处理.WTL还因此发展出很多"消息处理"类,让窗口实现类可以继承
我觉得消息处理机制这点比MFC反而增强了.
只是它不能象MFC那样在消息链中只传递WM_COMMAND
golden_alvin
2003-09-19
打赏
举报
回复
非常不错的Framework,可以结合COM一起使用
zwvista
2003-09-19
打赏
举报
回复
最近把以前用mfc写的小游戏用wtl改写了一遍,大部分功能都已经再现了,
但也有一些功能如使用注册表及activeX控件,强制更新状态栏等功能还需要查资料。
总的感觉是比较新鲜,wtl版本与mfc版本相比总体还是比较接近的,但需要改写的地方很多
比如wtl版本的消息映射
BEGIN_MSG_MAP(CFocusPoint2View)
MSG_WM_PAINT(OnPaint)
MSG_WM_CREATE(OnCreate)
MSG_WM_DESTROY(OnDestroy)
MSG_WM_MOUSEMOVE(OnMouseMove)
MSG_WM_LBUTTONDOWN(OnLButtonDown)
MSG_WM_SIZE(OnSize)
MSG_WM_ERASEBKGND(OnEraseBkgnd)
MSG_WM_TIMER(OnTimer)
END_MSG_MAP()
由于缺乏class wizard的支持,消息映射函数的声明及实现都需要自己写,有些不习惯
有的消息映射函数的参数与mfc版本有些差别,如OnTimer
void OnTimer(UINT, TIMERPROC);
GDI方面也有些差别,wtl版本多用handle,mfc版本则多用pointer
比如mfc版本(CDC *pDC)
// Set brush to desired background color.
CBrush backBrush(RGB(255, 128, 128));
// Save old brush.
CBrush* pOldBrush = pDC->SelectObject(&backBrush);
CRect rect;
pDC->GetClipBox(&rect); // Erase the area needed.
pDC->PatBlt(rect.left, rect.top, rect.Width(), rect.Height(), PATCOPY);
pDC->SelectObject(pOldBrush);
wtl版本
CPaintDC dc(m_hWnd);
// Set brush to desired background color.
CBrush backBrush;
backBrush.CreateSolidBrush(RGB(255, 128, 128));
// Save old brush.
HBRUSH hOldBrush = dc.SelectBrush(backBrush);
CRect rect;
dc.GetClipBox(&rect); // Erase the area needed.
dc.PatBlt(rect.left, rect.top, rect.Width(), rect.Height(), PATCOPY);
dc.SelectBrush(hOldBrush);
控件的使用也有些小差别如 mfc版本
BOOL CFocusPointView::SelectPicture()
{
CFileDialog dlg(TRUE, "bmp", m_strPicFile, OFN_HIDEREADONLY | OFN_FILEMUSTEXIST
, "Image Files(*.bmp;*.jpg;*.jpeg;*.gif)|*.bmp;*.jpg;*.jpeg;*.gif|All Files (*.*)|*.*||", this);
if(dlg.DoModal() == IDOK){
m_strPicFile = dlg.GetPathName();
return TRUE;
}
return FALSE;
}
wtl版本
BOOL CFocusPoint2View::SelectPicture()
{
CFileDialog dlg(TRUE, "bmp", m_strPicFile, OFN_HIDEREADONLY | OFN_FILEMUSTEXIST
, "Image Files(*.bmp;*.jpg;*.jpeg;*.gif)\0*.bmp;*.jpg;*.jpeg;*.gif\0All Files (*.*)\0*.*\0", m_hWnd);
if(dlg.DoModal() == IDOK){
m_strPicFile = dlg.m_szFileName;
return TRUE;
}
return FALSE;
}
toolbar statusbar的使用方法完全不同,这儿就不谈了
另外,wtl没有doc/view结构,我认为和mfc相比,这是比较显著的不同点
因此FrameWnd的消息比如菜单消息就只能由FrameWnd自己处理,不能像
mfc版本那样可以由Application View 或doc类处理
就写这么多,哪位若是对wtl感兴趣,可以从www.codeproject/wtl上查到更多的内容
xiaohyy
2003-09-18
打赏
举报
回复
看来用wtl的人不多。。。。
xiaohyy
2003-09-17
打赏
举报
回复
ding.....
flashboy
2003-09-17
打赏
举报
回复
估计3W行代码中,VC的例如#ifdef............@include等等就占了不少吧
csdnhbc20
2003-09-17
打赏
举报
回复
没用过,大虾们介绍一下(在大家都回了mfc的基础上介绍一下)。
xiaohyy
2003-09-17
打赏
举报
回复
>> 我的一个组件才写了3w行代码,release版就到1M了,郁闷
3w行代码还是不小了啊,呵呵
xiaohyy
2003-09-17
打赏
举报
回复
zai ding...
Analyst
2003-09-16
打赏
举报
回复
我的一个组件才写了3w行代码,release版就到1M了,郁闷
Analyst
2003-09-16
打赏
举报
回复
写个小程序体积是很小,写大了代码膨胀也是很厉害的。
叶子哟
2003-09-16
打赏
举报
回复
www.vckbase.com上有文章和资料及包
xiaohyy
2003-09-16
打赏
举报
回复
to LeeZi(临渊羡鱼,不如退而结网) :
当然比mfc好,至少比mfc小很多。。在用com做界面时就体现出来 了。
ttapi
2003-09-16
打赏
举报
回复
好是好,但是没有官方文档支持,每次弄点什么东东都要狂K那堆头文件,不爽。。。
不过速度真的很快,象是直接用的API,HOHO
LeeZi
2003-09-16
打赏
举报
回复
比MFC好,偶觉得。
xiaohyy
2003-09-16
打赏
举报
回复
up..
wxfjb
2003-09-16
打赏
举报
回复
www.codeproject.com上面有资料
加载更多回复(3)
谈谈
我对C++的认识
接下来我们
聊聊
成为一个能实战的C++程序员都会经历的那些事儿: IDE选择 C++语言 系统调用 第三方类库 简要来说说吧。 IDE选择 我比较喜欢的选择是Qt Creator(注意下载Qt SDK时选择mingw...
AOP, Signal/Slot, and Decoupling
本来没有打算这么早开始涉及“大型程序解耦”这一块内容,但是smithfox在winxcn论坛上提及相关的话题,所以决定还是在这里
聊聊
我对“解耦”的一些看法。面向方面编程(AOP,Aspect Oriented Programming)思想的精粹...
几个年薪百万的下属,爆了~
阅读本文大概需要7分钟。请原谅有点标题党,今天重点
谈谈
曾经带过的几名优秀下属,至于是不是年薪百万倒没那么重要。最近读者增速飞快,尤其是大学生和刚工作一两年的朋友,不少读者朋友加了我微信的第...
AOP, Signal/Slot, and Decoupling
本来没有打算这么早开始涉及“大型程序解耦”这一块内容,但是smithfox在winxcn论坛上提及相关的话题,所以决定还是在这里
聊聊
我对“解耦”的一些看法。面向方面编程(AOP,Aspect Oriented Programming)思想的精粹...
学习vc的经验之谈
看见大家在这里畅所欲言,有高手也有新入门的ddmm,我也来
谈谈
学vc的一点“捷径”吧,这条“捷径”纯粹走的是c/c++的路子,不考虑学习其他语言。(我只会c/c++,略懂vb和java,所以对于通过其他语言来切入vc的没
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章