中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Visual C++ > COM技术
初识WTL(下)
作者:未知 时间:2005-07-20 14:21 出处:VC知识库 责编:chinaitpower
              摘要:初识WTL(下)

初识WTL(下)
作者:orange

下载本文示例工程

代码运行效果图如下:


接上一节,我们这次在SDI中添加一个按钮,用来演示弹出一个自己添加的对话框。
因为WTL目前不支持像MFC那样的Class Wizard,所以我们得手动添加一些代码。首先我们在Resource View中Insert Dialog,接下来我们也可以借用一下MFC的Class Wizard,如图:


这里的CAxDialogImpl也可是CDialogImpl,MFC的Class wizard确实没为我们的小程序作些贡献,除了生成.h和.cpp文件,相信以后WTL也可以有Class Wizard支持。别忘了在你的.h文件中添加#include "resource.h"可以参照AboutDlg添加你的代码。这里我主要介绍在WTL中怎样使用DDX/DDV机制,如果你很清楚MFC中的DDX/DDV,这对你来说是so easy!

首先,你的在头文件中添加

(1)
#include <atlddx.h> //对使用DDX/DDV macro的定义
#include <atlcom.h>
#include <atlhost.h>   //这两个文件是使对话框可以使用ActiveX控件
(2)
class CDlgTest : public CAxDialogImpl<CDlgTest>,
public CWinDataExchange<CDlgTest>//封装了DDX/DDV运行机制
(3)添加宏:
BEGIN_DDX_MAP(CDlgTest)
DDX_CONTROL(IDC_TREE_WTL, m_Tree) // m_Tree我们自己定义的一个控件
END_DDX_MAP()
这些都和MFC的基本类似,最后在OnInitDialog中添加DoDataExchange(false);就完成了和MFC一样的DDX/DDV。 另外,在对话框添加了一个菜单,添加方法和MFC的一样,你也可以在程序中添加代码来完成!

参考资料:WTL for MFC Programmers 作者:Michael Dunn 在此深表感谢
关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有