已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ActiveX控件制作,在系统开发过程中,控件的使用可以有效的帮助程序的开发,但是系统提供的控件不能满足用户的所以要求。于是我们可以开发满足自己要求的Activx控件。下面介绍一个简单ACtivx控件的制作,1,新建MFCActivxcontrolwizard工程,名为MyClock,选择创建空的工程。生成的控件有3个类和2个接口。应用程序类:CMyclockApp主窗口类:CMyclockCtrl对话框类,显示控件属性页CMyclockPropPage接口是外部调用控件功能的函数集合,一些纯虚函数,在主窗口类中进行实现,运行时选择下面的方式:控件是无法独立运行,必须使用容器来测试控件。查看其方法和属性页:方法只有aboutBox,属性页为空。下面学习添加属性和方法。,控件注册与注销,控件必须注册才可以使用。在globals中有注册函数DllRegisterServer和注销函数DllUnregisterServer。Vc+编译控件时,最后对ACtivx控件调用全局函数进行注册。可以手动注册:开始-运行-regsvr32E:Clock.ocx或者vc+-tool-registercontrol控件注销,使用regsvr32程序,regsvr32/uE:Clock.ocx注销,默认生成的控件功能是在CMyclockCtrl:ondraw中画一个椭圆。可以修改为下面时间函数CTimetime=CTime:GetCurrentTime();if(0=time.GetSecond()FireNewMinute();CStringstr=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控件支持的属性页数。,注意如果不能访问控件常用属性页,可能是因为没有在当前的操作系统中正确地注册MFCDLL(MFCxx.DLL)。导致这种情况的原因通常是安装了VisualC+和。Net多个MFC库,如果常用属性页不可见通过在命令行中用DLL的完整路径名运行RegSvr32.exe来注册DLL。,添加自定义属性页,如果系统提供一个自定义属性页不够用。则按以下步骤添加:1.ActiveX工程中,资源视图中“Dialog”节点,添加Dialog并选择IDD_OLE_PROPPAGE_SMALL。并修改其名字。,2.在类向导中,添加新类,注意其基类和dialogID(选择你新建的对话框).,3程序中添加:程序中有个属性页表添加头文件#includeclassname.h修改属性表BEGIN_PROPPAGEIDS(CClockCtrl,4)PROPPAGEID(CClockPropPage:guid)PROPPAGEID(CLSID_CColorPropPage)PROPPAGEID(newPropPage:guid)PROPPAGEID(classname:guid)END_PROPPAGEIDS(CClockCtrl)改变其总数,并将新建的属性页其加入4.完善属性页,二设置自定义属性页的名字在资源的stringtable中添加两个string一个是新建属性页的标题,一个是新建属性页的名字。(在字符表中修改后,必须在程序中对应位置修改),我们先定义个设置的值是IDS_Camera_IP_CAPTION(名字)。,在这个属性页类的构造函数由newPropPage:newPropPage():COlePropertyPage(IDD,0)改为:newPropPage:newPropPage():COlePropertyPage(IDD,IDS_new_CAPTION)结果出现错误:,4.错误是没定义标题,出现空指针。再定义一个标题:IDS_VIDEO_Camerapara(options标题)BOOLCcameraparam:CcameraparamFactory:UpdateRegistry(BOOLbRegister)if(bRegister)returnAfxOleRegisterPropertyPageClass(AfxGetInstanceHandle(),m_clsid,IDS_VIDEO_Camerapara);elsereturnAfxOleUnregisterClass(m_clsid,NULL);,三属性页控件变量关联到属性1.在项目类中添加一个属性propname(名字中不要有下划线)。错误:Invali
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协会会议组织服务协议
- 圆的周长和面积(对比练习)(教案)2023-2024学年数学六年级上册 北师大版
- 青黄中国风孝亲敬老重阳节主题班会模版
- 统编版小学语文四年级下册《14母鸡》(教案)2021
- 九年级英语全一册知识点总结
- 2024年浙江省杭州市西湖区公益中学中考数学模拟试卷(一)
- 造价咨询违约责任合同
- 2024年碱性染料项目提案报告
- GB-T 41734.1-2022 动物射频识别 第1部分:射频识别标签与GB-T 20563和GB-T 22334的一致性评估(包括制造商代码的发放和使用)
- 2024年科研项目立项申请报告范样
- 2024年首届全国“红旗杯”班组长大赛考试题库必刷必练800题(含答案)
- (正式版)JTT 1495-2024 公路水运危险性较大工程安全专项施工方案审查规程
- 2024年安全月主题宣贯课件
- 施工现场临时用电安全技术规范
- 中国食物成分表最新权威完整改进版[共3页]
- 6大洁王(喷枪水
- 跌倒-坠床不良事件鱼骨图分析;
- 压力蒸汽灭菌效果监测杨彬.ppt
- 高中三年成绩单模板(新留学)-
- 妇联开展家风家教主题宣传月活动工作总结
- 开展爱国卫生防蚊灭蚊工作总结3篇
评论
0/150
提交评论