ActiveX控件制作.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ActiveX控件制作

ActiveX控件制作 在系统开发过程中,控件的使用可以有效的帮助程序的开发,但是系统提供的控件不能满足用户的所以要求。于是我们可以开发满足自己要求的Activx控件。 下面介绍一个简单ACtivx控件的制作 1,新建MFC Activx control wizard工程,名为MyClock,选择创建空的工程。生成的控件有3个类和2个接口。 应用程序类:CMyclockApp 主窗口类:CMyclockCtrl 对话框类,显示控件属性页 CMyclockPropPage 接口是外部调用控件功能的函数集合, 一些纯虚函数,在主窗口类中进行实现 运行时选择下面的方式:控件是无法独立运行,必须使用容器来测试控件。 查看其方法和属性页:方法只有aboutBox,属性页为空。 下面学习添加属性和方法。 控件注册与注销 控件必须注册才可以使用。在globals中有注册函数DllRegisterServer和注销函数DllUnregisterServer。 Vc++编译控件时,最后对ACtivx控件调用全局函数进行注册。 可以手动注册:开始-运行-regsvr32 E:\Clock.ocx 或者vc++-tool-register control 控件注销,使用regsvr32 程序, regsvr32 /u E:\Clock.ocx 注销 默认生成的控件功能是在CMyclockCtrl ::ondraw中画一个椭圆。可以修改为下面时间函数 CTime time=CTime::GetCurrentTime(); if(0==time.GetSecond()) { FireNewMinute(); } CString str=time.Format(%H:%M:%S); pdc-TextOut(0,0,str); 得到时间时静止的,可以设置一个时钟函数,更新时间 添加常用属性页 MFC 提供了三个与 ActiveX 控件一起使用的常用属性页:CLSID_CColorPropPage、CLSID_CFontPropPage 和 CLSID_CPicturePropPage。 这些页分别显示常用颜色、字体和图片属性的用户界面。 添加:在MyclockCtl.cpp中找到 BEGIN_PROPPAGEIDS( CSampleCtrl, 4 ) PROPPAGEID( CMyPropPage::guid ) PROPPAGEID( CLSID_CFontPropPage ) PROPPAGEID( CLSID_CColorPropPage ) PROPPAGEID( CLSID_CPicturePropPage )END_PROPPAGEIDS(CSampleCtrl) 请注意,BEGIN_PROPPAGEIDS 宏中的属性页数为 4。它表示 ActiveX 控件支持的属性页数。 注意???如果不能访问控件常用属性页,可能是因为没有在当前的操作系统中正确地注册 MFC DLL (MFCxx.DLL)。导致这种情况的原因通常是安装了 Visual C++和。Net多个MFC库, 如果常用属性页不可见通过在命令行中用 DLL 的完整路径名运行 RegSvr32.exe 来注册 DLL。 。 添加自定义属性页 如果系统提供一个自定义属性页不够用。则按以下步骤添加: 1.ActiveX工程中,资源视图中“Dialog”节点,添加Dialog并选择 IDD_OLE_PROPPAGE_SMALL。并修改其名字。 2.在类向导中,添加新类,注意其基类和dialogID(选择你新建的对话框). 3程序中添加:程序中有个属性页表 添加头文件 #include classname.h 修改属性表 BEGIN_PROPPAGEIDS(CClockCtrl, 4) PROPPAGEID(CClockPropPage::guid) PROPPAGEID(CLSID_CColorPropPage) PROPPAGEID(newPropPage::guid) PROPPAGEID(classname::guid) END_PROPPAGEIDS(CClockCtrl) 改变其总数,并将新建的属性页其加入 4. 完善属性页 二.设置自定义属性页的名字 在资源的string table中添加两个string一个是新建属性页的标题,一个是新建属性页的名字。(在字符表中修改后,必须在程序中对应位置修改) 在这个属性页类的构造函数 由newPropPage::newPropPage() : COlePropertyPage(IDD,0) 改为:newP

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档