文档介绍:第4章 ActiveX控件
ActiveX控件基础
ActiveX控件发展历史
ActiveX控件的属性
ActiveX控件的事件
ActiveX控件的方法
使用ActiveX控件的一般方法
日历控件的实现实例
使用ActiveX控件与使用标准Windows控件非常类似,标准控件作为操作系统的一部分,可在程序中直接使用,而ActiveX控件需要事先安装到项目中,使用时,可通过属性对话框设置控件的属性、分配资源标识符,关联成员变量,映射控件事件
安装控件并添加到项目中
映射控件事件
VBX作为VB的扩展,作为可重用的软件组件,可直接嵌入应用程序中,
VBX为16位,Win32中,,发展OLE控件,称为OCX
随着网络的发展,对OCX改进,使其更适合网络传播,将其与OCX一起称为ActiveX控件
ActiveX控件的特点
ActiveX控件是直接插入程序中的软件模块,技术
ActiveX控件的资源非常丰富,可通过网络或软件开发商获得,也可自己开发ActiveX控件,使用也非常方便:
将ActiveX控件拖放到资源模板的适当位置,设置它的资源标识符和属性,关联成员变量,映射控件事件(使用控件时,需要将控件与控件类关联)
ActiveX控件的历史
ActiveX控件的属性
属性:控件的特征或特性,具有符号化名称,在控件内部通过整数索引对应,类似类中的成员变量
公共属性和自定义属性
控件类的基类为COleControl,公共属性由该类定义
自定义属性由控件开发者定义,在控件类提供相应成员函数访问这些属性
访问控件的属性
在程序设计阶段,可通过属性对话框访问控件的属性,在程序运行阶段,可通过调用相应的方法访问控件属性,对于公共属性,访问的方法由COleControl类提供,对于自定义属性,这些方法由控件开发者提供
注意:程序运行阶段,只能设置非只读属性
ActiveX控件的事件
用户操作控件(如鼠标单击、输入数据等),控件将激发事件并将事件通知控件容器,控件类将调用相应的事件处理函数
可以通过ClassWizard映射控件事件,类似于消息映射,将事件处理函数和事件关联起来,当控件容器收到事件通知时,将调用控件类的这一事件处理函数
公共事件和自定义事件
共有事件由COleControl类定义并进行映射,可以使用共用事件的默认处理函数,也可以在控件类中重载它们
自定义事件由控件开发者定义
要点:ActiveX控件、控件容器、控件类、控件事件映射的概念及联系
ActiveX控件的方法
ActiveX控件与应用程序的交换
用户操作控件→控件激发事件并通知控件容器→控件容器收到事件通知→控件类调用控件事件处理函数
控件容器通过调用控件方法,间接操作控件
控件的方法是应用程序向控件发送数据的接口,与控件类的成员函数相关联,通过调用控件的成员函数,即可间接调用控件内部的方法
公有方法与自定义方法
公有方法由COleControl类提供
自定义方法由控件开发者提供
使用ActiveX控件的一般方法
生成支持ActiveX控件的控件容器程序
搜索需要的控件(通常保存在扩展名为OCX的动态链接库文件中),并将控件登记到注册表中
将注册的控件添加到创建的项目中
与普通控件的使用类似,将控件添加到控件容器中,并设置控件的属