还剩9页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
面向对象程序设计实验指导书(VisualBasic
6.0版)速绍华编写云南师范大学旅游地理科学学院目录TOC\o1-1\h\z\u实验1窗体类3实验2设计与使用类模块4实验3创建ActiveXDLL5实验4创建ActiveXOCX7实验5创建ActiveXEXE9实验6OOD系统集成11实验1窗体类(验证性实验)
一、背景知识如果说创建类的历史与使用VisualBasic编程的历史一样长,也许会感到惊奇但这是真的Form1,每次开始一个工程都要碰到的这个老相识,实际上就是一个类为了说明这一点,打开一个新的“标准EXE”工程添加一个按钮到From1,并在单击__中放置如下的代码PrivateSubCom__nd
1.ClickDimfAsNewForm1f.ShowEndSub按F5键运行这个工程,并单击该按钮啊!出现了Form1的另一个实体!单击其中的按钮,又有另一个窗体!所创建的每一个实体看上去都是一样的,并且有同样的表现,因为它们都是Form1类的实体
二、实验要求
1、理解窗体类以及两种使用窗体的方法及其差异
2、掌握以类的方式使用窗体,并能为其添加额外的自定义属性、__和方法
3、掌握窗体互相调用的技术
三、实验步骤1添加一个标准模块和一个标准窗体(注意名字要有含义)2给窗体添加属性、方法和__3在标准模块中调用类模块(看看__能不能使用)4总结窗体类的定义与使用实验2设计与使用类模块(验证性实验)
一、背景知识可以把类理解为一个创建不同实例的公共模板类模块和标准模块的不同点在于存储数据方法的不同标准模块的数据只有一个备份这意味着标准模块中一个公共变量的值改变以后,在后面的程序中再读取该变量时,它将得到同一个值而类模块的数据,是相对于类的实例(也就是,由类创建的每一对象)而__存在的同样的,标准模块中的数据在程序作用域内存在,也就是说,它存在于程序的存活期中;而类实例中的数据只存在于对象的存活期,它随对象的创建而创建,随对象的撤消而消失最后,当变量在标准模块中声明为Public时,则它在工程中任何地方都是可见的;而类模块中的Public变量,只有当对象变量含有对某一类实例的引用时才能访问
二、实验要求
1、理解类模块的功能
2、理解类的本质含义及其与实例的关系
3、掌握在类模块中添加属性、方法与__的方法
4、能够在标准窗体或模块中使用并调试类模块
三、实验步骤HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconcreatingoledllserver.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d1添加类模块(重命名类模块,使之具有明确含义)2在类模块代码窗体中添加属性、方法和__(至少一个)3在普通窗体中使用类模块4总结类模块的定义与使用实验3创建ActiveXDLL(验证性实验)
一、背景知识部件提供了对象形式的可复用代码要使用部件的代码,应用程序可以创建对象并调用对象的属性及方法,这种应用程序被称作一个客户应用程序对于使用部件对象的客户应用程序,部件可分为进程内运行的和进程外运行的进程内部件,或者说ActiveXDLL,运行在另一个应用程序的进程之中客户可以是应用程序本身,也可以是该应用程序正在使用的其它进程内的部件本实验以循序渐进的方式建立一个进程内部件ThingDemo,使用它的类模块说明对象存活期、全局对象、以及控制模式和无模式对话框的对象等概念另外还将看到在MicrosoftVisualBasic__环境中,如何通过同时运行DLL和测试工程来调试进程内的ActiveXDLL用来创建ThingDemo部件的步骤之间存在调用关系因此,这些步骤的执行顺序是很重要的
二、实验要求
1、了解dll工作的机制
2、掌握设计与测试dll的方法
三、实验步骤HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconcreatingoledllserver.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d1创建ThingDemoDLL工程如何为进程内部件设置工程选项2创建Thing类的属性和方法添加两个属性和一个方法3创建TestThing测试工程创建一个工程组,包括ThingDemo和一个测试工程,由此可以在进程中调试DLL工程HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconcreatingtestingobjects
03.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d4创建并测试Thing对象在TestThing工程中添加代码,创建Thing对象的实例并调用它的属性和方法5运行TestThing测试程序说明进程内部件提供的对象的存活期HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconcircularreferencesobjectlifetime.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d6循环引用和对象存活期进一步探讨对象的存活期,阐述循环引用对关闭部件的影响7在ThingDemo工程中添加窗体添加代码来显示一个模式的或无模式的对话框窗体,使用全局类来控制该窗体HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconbacktotestapplication
03.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d8在TestThing中使用全局对象测试全局对象和对话框,同时进一步说明如何调试进程内DLL9编译和测试ThingDemoDLL编译工程介绍如何利用测试工程测试.dll文件,以及如何在其它工程中包含该文件HYPERLINKmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/vbconcircularreferencescomponentshutdown.htmINCLUDEPICTUREmk:@MSITStore:d:\\Program%20Files\\Microsoft%20Visual%20Studio\\MSDN98\\98VS\\2052\\vbcon
98.chm::/Html/leaf.gif\*MERGEFORMAT\d10循环引用和部件的关闭在客户应用程序释放了所有对进程内部件对象的引用后,VisualBasic如何卸载该部件另外还指出循环引用可能会妨碍卸载11关于创建ActiveXDLL的总结概述设计和创建进程内部件的典型过程实验4创建ActiveXOCX(验证性实验)
一、背景知识实验采用一系列按步骤进行的过程构造了一个称之为ShapeLabel的简单ActiveX控件尽管这个控件本身并没有什么感兴趣的地方,但它的构造能快速示范ActiveX控件存活期的主要__,并能介绍在设计时期代码运行的错综复杂性,还能给出创建与挂接属性页的基本步骤因为创建ShapeLabel控件的各个过程是相互依赖的,所以这些过程的执行顺序很重要
二、实验要求
1、了解OCX的工作的机制
2、掌握设计与测试OCX的方法
三、实验步骤1创建ControlDemo工程打开一个空的ActiveX控件工程,检查ActiveX控件设计器并且设置适当的工程属性2添加TestCtlDemo工程创建包含ActiveX控件和测试工程的工程组,并将这两个工程链接起来3在设计时运行ShapeLabel控件演示如何使某个ActiveX控件进入运行模式而不将测试工程放入运行模式,从而使控件设计时的行为可以调试4UserControl对象的存活期说明出现在ActiveX控件存活期的主要__,并显示一个控件实例怎样连续地被撤消及重建5绘出ShapeLabel控件可以采用图形方法从一个草图绘出新控件,或者通过组合其它控件来构造新控件ShapeLabel使用后一种技术6保存ShapeLabel控件的属性值把Caption属性添加到ShapeLabel控件中并示范怎样保存该值介绍Extender对象7给ShapeLabel控件添加一个属性页演示如何创建属性页以及如何将其与ShapeLabel控件相连接8把一个__添加到ShapeLabel控件中示范怎样显露__9编译ControlDemo部件编译该工程,并演示怎样用测试工程来测试.ocx文件,并将其包含在另一工程中10重述控件创建总结创建ActiveX控件所需的关键任务实验5创建ActiveXEXE(验证性实验)
一、背景知识部件以对象方式提供可重用代码通过创建对象并调用其属性和方法来使用部件的代码的应用程序,被称作客户相对于使用部件对象的客户端而言,部件可以运行于进程内或进程外进程外部件或ActiveXEXE,在自己的地址空间中运行而客户通常是运行在其它进程中的应用程序
二、实验要求
1、了解ActiveXOCX的工作的机制
2、掌握设计与测试ActiveXOCX的方法
三、实验步骤1创建Coffee工程打开新的ActiveXEXE工程,设置必要的工程信息,并且添加演示模式和无模式窗体所需的模块2显示CoffeeMonitor类的窗体添加显式模式或无模式窗体的代码3创建CoffeeWatch测试工程说明如何在__环境的第二个实例中创建测试工程往测试工程中添加代码来调用CoffeeMonitor方法4模式和无模式窗体在进程外如何运转说明了当它们与客户的主窗体不在同一个进程中时,模式窗体和无模式窗体显示是不同的5提供异步通知__说明如何建立向一个或多个客户提供异步通知的对象6接收异步通知__往客户中添加代码来请求异步通知,并当通知__发生时采取某些行动的代码7共享CoffeeMonitor创建Connector对象,客户可以用它来获取对于单个共享的CoffeeMonitor实例的引用8使用共享的CoffeeMonitor往客户中添加代码来申请Connector对象,然后调用CoffeeMonitor的属性来获得对共享的CoffeeMonitor对象的引用9创建并测试可执行的Coffee编译Coffee部件和CoffeeWatch测试程序用一个Coffee.exe实例来运行CoffeeWatch工程和几个CoffeeWatch.exe实例10总结ActiveXEXE部件的创建概述进程外部件的设计和创建一般过程实验6OOD系统集成(综合性实验)
一、背景知识系统集成是在系统工程科学方法的指导下,根据用户需求,优选各种技术和产品,将各个分离的子系统连接成为一个完整可靠经济和有效的整体,并使之能彼此协调工作,发挥整体效益,达到整体性能最优
二、实验要求
1、__创建至少一个类模块、一个dll、一个ocx和一个ActiveXEXE(均要求有完整的接口以及对接口描述的相应文档)
2、建立一个标准的EXE工程,在工程中使用以上部件和类模块
3、各部件能够协调一致工作
4、系统必须具有一定的实际意义
三、实验步骤1创建类模块和三种ActiveX部件若干2建立一个标准EXE工程3在标准EXE工程中使用类模块和自己__的组件编写小型应用程序4总结VB环境下基于组件__(OOD)的基本思路和集成技术。