您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > VB_DESK_T6_北大青鸟VB学习教材
基于VB的桌面系统开发方案ActiveX控件回顾1、下列说法正确的是:a、COM定义了一个允许应用程序之间进行交互的模型b、COM是OLE的一个实现c、在WORD文档中插入EXCEL对象,WORD是服务器端d、客户端程序必须注册d、链接方式比嵌入方式创建的文件大回顾(续1)2、关于COM服务器类型,下列说法正确的是:a、自动服务器,ActiveX允许客户端访问其对象的方法和属性b、ActiveX允许客户端访问其对象的事件课题目标了解什么是ActiveX控件及其用处了解控件类的概念了解创建和编译一个ActiveX控件的步骤理解属性包PropertyBag的用途把ActiveX控件作为数据源控件使用ActiveX控件VisualBasic提供了许多ActiveX控件,如ADO数据控件、状态条、工具条、DataCombo和DataList控件可以创建自己的控件,方便的开发第三方控件不但可以在工具箱中使用,而且也可以在Web中使用更可以在其它语言环境中使用,这就为大型软件系统的设计,提供了一个相当好的机制。ActiveX的介绍COM的目标之一是共享资源和创建可重用组件,ActiveX控件在界面层实现重用一个ActiveX控件就是一个具有下列特征的COM对象:识别事件的能力能够对这些事件编写代码可以执行用户编写的不同事件的代码和其它的COM对象一样拥有方法和属性ActiveX控件(续1)在VisualBasic中有三种创建控件的模型:创建自己绘制的控件使用可视的元素和自己选择的行为来创建自己的控件这种类型的控件称为用户绘制(user-drawn)的控件在已存在的简单控件上增加功能已存在的控件上添加自己的属性、方法和事件从多个已有的控件集成一个新的控件创建一个ActiveX控件第一步是创建一个“ActiveXControl”类型的工程这类工程中没有窗体只有一个UserControl对象这个对象和窗体类似,但是没有边界已有的控件可以象在标准窗体中一样把它们放置到UserControl对象中BackStyle属性和ToolBoxBitmap属性创建属性页VisualBasic也提供了一个属性页向导来帮助我们为控件添加属性页通过外接程序管理器加载“VB6PropertyPageWizard”就可以使用这个向导了向导的第一页显示的是“添加属性页”窗口,它允许我们添加想在用户控件中使用的属性页属性值向导为每一个属性产生一个PropertyLet和一个PropertyGet方法PropertyLet方法任何时候用户改变属性的值时被调用PropertyGet方法任何时候用户试图获得属性的值时被调用PropertyChangedPropertyNamePropertyBag对象写入属性读取属性PropertyBag对象保存属性值WriteProperties事件在控件被撤消或重新创建时触发这个事件是用来存储PropertyBag对象中的每个属性语法:Subobject_WriteProperties(PropbagAsPropertyBag)Object:用户控件的名称Propbag:将要向它填写数据的PropertyBag类型的对象保存属性值(续)在WriteProperties事件中,使用到PropertyBag对象的WriteProperty方法这个方法要求指定属性的名字、属性当前值和缺省值语法:object.WriteProperty(Name,Value,DefaultValue)Object:用户控件的名字保存属性值(续)PrivateSubUserControl_WriteProperties(PropbagAsPropertyBag)PropBag.WriteProperty(“BorderStyle”,UserControl.BorderStyle,0)EndSub获取属性值ReadProperties事件:在控件被加载时触发通过它从PropertyBag对象中获取属性的有关信息语法:Subobject_ReadProperties(PropbagAsPropertyBag)Object:用户控件的名字获取属性值(续)在ReadProperties事件中使用到PropertyBag对象的ReadProperty方法它要求指定属性的名称和缺省值指定缺省值的原因是为了防止出现属性没有被保存的情况语法:object.ReadProperty(Name[,DefaultValue])获取属性值(续)Object:用户控件的名字PrivateSubUserControl_ReadProperties(PropBagAsPropertyBag)UserControl.BorderStyle=PropBag.ReadProperty(“BorderStyle”,0)EndSubInitProperties事件InitProperties在第一次创建控件的实例时发生。在这个事件中可以设置没有映射到成员控件的属性的初始值已映射的属性已经被相应的成员控件初始化测试和使用ActiveX控件测试ActiveX控件使用ActiveX控件第一步是把ActiveX控件工程编译为一个“ocx”文件第二步是把这个控件加入到VisualBasic工具栏中,通过使用“工程”菜单中的“部件(component)”对话框来实现从对话框中选中这个控件并把它加入到VisualBasic工具栏中作为数据源的ActiveX控件步骤从“引用”对话框中添加“ActiveXDataObjects2.0”库的引用设置用户控件的DataSourceBehavior属性为vbDataSource在用户控件的Initialize事件中设置连接和记录集对象编写代码让控件实现所需要的功能本课总结ActiveX控件的特征创建自定义控件的方法有三种控件类用来创建控件的模板ActiveX控件接口向导用来为ActiveX控件创建属性使用PropertyChange方法来修改属性值PropertyBag对象用来保存被消除或是被重新创建的控件的属性信息使用WriteProperties事件来把属性保存到ProperBag对象中本课总结(续)使用ReadProperties事件从PropertyBag对象中获取属性值InitProperties事件在第一次创建一个控件的事例时触发VisualBasic为一个工程中的所有控件创建一个.ocx文件当一个ActiveX控件的DataSourceBehavior属性被设为vbDataSource时,表示这个控件可以用作数据绑定控件的数据源
本文标题:VB_DESK_T6_北大青鸟VB学习教材
链接地址:https://www.777doc.com/doc-3379024 .html