2024年4月12日发(作者:)
(完整版)VB6.0培训教案
Visual Basic 6.0 培训教案
提前需要进行的环境安装准备:
1.
Visual Basic 6.0中文企业版 + SP6
2.
配套的MSDN中文版
3.
配套的Visual SourceSafe 6。0
4.
Codejock Xtreme Suite Pro ActiveX 9.601控件包
5.
VS FlexGrid Pro 8。0控件包
6.
Axialis IconWorkshop以及IconExperience图标套件
7.
ComExplorer
8.
非Win98、Windows7、Vista操作系统
1
Visual Basic 概述
1.1
IDE集成开发环境:
1.1.1
布局与功能区:
运行Visual Basic 6.0,在”新建工程”提示框处点击”确定”,就进入了IDE集成开发环境,
如下图所示:
1)
菜单与工具栏:
缺省VB只显示了标准的工具栏,根据编程的需要,应该通过右键菜单将所有的工具栏都显
示出来并进行合理的排布,特别是其中的”调试”工具栏比较重要.
2)
窗体设置区域:
这里是模拟运行的效果所显示的窗体,可在上面进行控件拖放等可视化设计;根据所使用控
件的不同,不一定能完全达到所见即所得的效果.
3)
控件工具箱:
显示可用的控件图标,这里只缺省列举VB内置的标准控件。
4)
工程浏览器:
显示各个工程以及工程所包含的各种文件的树形浏览器;对一个工程组,可能包含多个工
程,都显示在浏览器中.
(完整版)VB6.0培训教案
5)
属性浏览器:
用于显示窗体、或者窗体中当前所选择控件的属性列表;也可以显示工程浏览器中当前所选
择的其他文件的属性。
6)
窗体布局:
用于直观显示当前窗体在屏幕中的布局,可拖动其中的窗体改变屏幕位置;该区域一般不使
用,为增加其他区域的可视区域可将它隐藏。
开发过程中,根据可视区域尺寸的需要,以上各个区域都可以关闭或者通过工具栏上面的按钮
显示出来.
注:图例中有一些菜单、工具条、页卡与标准的VB环境有所区别,是因为安装了CodeSmart辅
助编程插件。
1.1.2
可视化设计开发:
窗体缺省是处于设计状态,在设计状态下,点击控件工具箱上面的对应控件,然后在窗体上
面进行拖放,就添加了这个控件;在窗体上面摆放多个控件,并进行拖放排布,在属性浏览器
中设置它的相应属性,就是可视化设计的主要工作。
除了标准的内置控件外,可以在控件工具箱上面点击右键,选择”部件”(或者选择菜单”
工程部件”),就会弹出第三方控件列表对话框,勾选对应的控件之后,在控件工具箱上面会
增加显示对应的控件图标。
在工程浏览器中,左上角的两个图标用于切换窗体的设计界面和代码书写界面,双击窗体设
计界面也可以切换到代码书写界面;代码书写界面类似下图:
其中有两个下拉框,第一个下拉框定位具体的对象(窗体或者控件),第二个下拉框定位它的具
体某个事件,当事件函数在代码中不存在时,会自动产生。
除了事件函数外,也可能有一些自已书写的函数,可以在第一个下拉框中选择”(通用)”,然
后就可以在第二个下拉框中找到这些函数进行定位。
Visual Baisc的代码都是由一个个的函数组成,所以又称为函数式编程。
在窗体界面设计好,代码编写完成之后,点击工具栏上面的”启动”按钮(F5),即可运行程
序;运行程序有两种方式,一种是”启动”,一种是"全编译执行”(Ctrl+F5),全编译执行
可以检查出代码中的编译错误,从好的习惯出发,一般都应该使用”全编译执行".
程序运行之后,如果要进行调试,可以点击工具栏上面的"中断”按钮(Ctrl+Break),即进入
代码调试状态;如果要终止程序,可以关闭窗体,或者点击工具栏上面的”结束”按钮。
1.1.3
VB环境设置:
在使用VB环境进行开发之前,先可以进行一些基本的选项设置,但不是必须的。选择菜单"工具
选项"进入选项设置,下面介绍几个常用的选项设置,其他的保持缺省即可:
1)
自动语法检测:
在”编辑器"页面,该选项一般情况下应勾上,这样在代码书写过程中,会自动对错误的语
法进行检查提示。
2)
要求变量声明:
在”编辑器”页面,该选项一般情况下应勾上,虽然VB支持不声明变量直接使用,但这样是
不严谨的,我们的规范也不允许。该选项勾上的情况下,代码窗体的最前面会自动加上”
Option Explicit”关键字.
(完整版)VB6.0培训教案
3)
代码颜色和字体:
在”编辑器格式”页面,这里面可以根据自身的情况,设置对应的颜色和字体。
4)
窗体网格设置:
在”通用”页面,根据自身情况,确定是否勾选”显示网格”和"对齐控件到网络";
5)
错误捕获:
在"通用"页面,这个是比较重要的参数,影响程序调试。但具体选项的作用,我们在后面
错误调试的章节再进行说明。
另外VB开发环境是一个开放的环境,可以在IDE环境中加载插件以提供一些辅助编程的功能,
比如前面提到的CodeSmart就是一种插件;甚至可以自已使用VB开发插件(本培训课程不涉
及)。
加载插件的方法是选择菜单”外接程序外接程序管理器”,就会弹出外接程序管理器,并列
举出可用的插件,选择对应的插件,并勾选”在启动中加载、加载/卸载”,然后在菜单中,就
会自动添加相应的功能项。
VB缺省提供了一些有用的插件,下面简单介绍一下:
1)
Source Code Control Add—In:
这个是与Visual Source Safe源代码管理器相集成的的一个插件,加载之后,可以直接方
便地在VB环境中进行源代码的管理和处理.关于Visual Source Safe的集成使用,后面章
节再进行介绍。
2)
VB6 API Viewer:
一个Windows标准API的查询和函数定义生成器,方便进行API编程。
3)
VB6类生成工具:
辅助定义类,类的属性、方法、事件,设置类集合,并自动生成对应代码的工具;这个工
具可能经常使用。
4)
VB6资源编辑器:
当要把图片、字符串等资源附加到工程中,一并编译到文件中时,需要使用到资源文件,这
个工具可以对资源文件中的内容进行编辑.关于工程中资源的访问,后面章节再进行介绍。
1.2
VB工程与文件类型:
1.2.1
可开发的工程与类型:
进入Visual Basic 6。0时,会提新建的工程类型。这里对我们常用的几种工程类型进行说明:
1)
标准EXE:
开发Windows 标准的exe可执行文件。
2)
ActiveX DLL:
开发基于COM对象的DLL部件,通过开放公共的类接口来被其他程序所调用,其他程序可
以是支持COM部件调用的任何语言编写的;该DLL部件可能是系统中的业务组件之一,也
可能是一个公共功能的组件;
3)
ActiveX EXE:
与ActiveX DLL类似,可通过开放公共的类接口来被其他程序所调用;但它是以exe的方式
出现,因此相对于调用它的主程序来说,ActiveX EXE是在独立的进程中运行.
4)
ActiveX 控件:
同样是基于COM对象的程序,但是以控件的形式提供让其他程序调用.
1.2.2
工程文件组成:
窗体只是VB工程中的一种文件,VB工程(Project,prj)中可能包含的比较常用的文件类型
如下:
1)
窗体:
Form,用于与用户进行交互,文件扩展名为frm,文本格式,存放各个控件的属性,以及窗
体中的代码;如果窗体中包含二进制数据(比如窗体中有一张图片),就会产生同名的frx
文件.
(完整版)VB6.0培训教案
2)
模块:
Modual,用于存放全局使用的公共变量、公共函数,文件扩展名为bas。
3)
类模块:
Class,用于实现VB中的类,VB基于对象的编程就主要靠类模块实现,文件扩展名为cls。
4)
用户控件:
UserControl,实现自定义控件时它是主要的界面设计文件,特性与窗体文件类似,扩展名
为ctl,对应的二进制同名文件为ctx。
5)
属性页:
PropertyPage,实现自定义控件时,对控件的属性进行设置的窗体,特性与窗体文件类似,
扩展名为pag,对应的二进制同名文件为pagx.
6)
资源文件:
Resource,用于存放工程中使用的,额外的图片、字符串等数据,与工程一起编译。二进制
格式,扩展名为res,一个工程中只能有一个资源文件。
以上文件的名称都可以在属性浏览器中进行设置,保存时的磁盘文件名缺省与所设置的文件名
称相同,但也可以强制保存为其他磁盘文件名,不过这样是很不规范的行为,容易给管理造成
混乱。
1.2.3
工程属性与启动:
1)
启动工程以及工程的启动对象:
在一个工程组中(Visual Basic Project Group、vbg),可以包含多个工程(比如一个类
型为标准exe的主工程,若干个类型为ActiveDLL的业务部件工程),但启动工程只有一个;
在C/S开发模式中,启动工程就是exe工程,在工程浏览器中选中exe工程名,点击右键,
选择"设置为启动”即可;当只有一个工程时,它缺省就是启动工程。
设置了启动工程,该工程启动的入口又有两种方式;一种是缺省以工程中添加的第一个
窗体作为启动入口;另一种是以模块文件中的Main过程作为入口(模块中定义的Public
Sub Main或者Sub Main),具体可以在工程属性的启动对象中设置;当要编写无界面交互的
程序,或者在窗体显示之前先要作一些特殊处理的程序来说,Sub Main启动就非常有用.
2)
工程属性:
在工程浏览器中选中某个工程名,点击右键,选择"〈工程名>属性”即可弹出工程属性设置
框。工程有一些比较重要的属性,下面分别介绍:
1)
“通用”页面:
启动对象:前面已经说了,用于选择窗体启动,还是Sub Main启动。这个选项主
要针对exe工程,对于dll、ocx等工程,缺省为”(none)"。
2)
“生成”页面:
(完整版)VB6.0培训教案
版本号:设置当前工程部件所对应的版本号,每一位允许在0—9999之间设置;在
产品化的开发中,版本号非常重要;该属性在代码中可以通过APP。Major、Minor、
Revision读取。
注:在Windows的文件属性中看到的版本号格式是4段的,如10。28。0。10,这
里的对应设置为10.28。10。
应用程序:
标题用于设置对工程的简称,如”药房业务部件”,这个标题同时也是工程中调用
MsgBox函数进行消息提示框的缺省标题,该属性在代码中可以通过读
取.
图标用于设置工程编译后所生成文件的图标,它是通过选择工程中的某个窗体,而
使用该窗体的图标作为工程编译文件的图标.
版本信息:
设置一些附加的工程信息,一般是跟版权相关的信息,包括”产品名、公司名、合
法版权、合法商标、文件描述”等,在代码中可通过APP。ProductName、CompanyName
等属性访问。工程被编译成文件之后,在Windows的文件属性中也可以查看到这些
信息。
命令行参数:
标准exe工程编译之后,由其他程序调用时可以传入命令行参数;如果在这里输入
命令行参数,就是让程序运行时,模拟进行传入,以方便程序进行调试。
3)
“部件”页面:
版本兼容:
对于ActiveX EXE/DLL/控件这几种类型的工程,都是以COM类来开放接口,在编译
生成文件时,与以前的版本的文件存在一个接口兼容性问题,在接口类的定义、函
(完整版)VB6.0培训教案
数、参数等未发生变化,或者只发生了向下兼容性的变化时,应该选择按”二进制
兼容”模式进行编译,并指定要进行兼容检查的磁盘文件。
这个设置对于公用性质的部件特别重要,一旦不兼容了,使用公用部件的程序就会
出错,除非也重新编译使用公用部件的程序。
1.2.4
工程编译与发布:
工程编译的方法比较简单,选择菜单"文件生成<工程名>”,然后指定要生成到的路径和文件
名即可,标准EXE、ActiveX DLL、ActiveX EXE、ActiveX 控件编译时分别生成的是exe、dll、
exe、ocx文件。
要发布所编译的文件,需要将它所依赖的其他文件一并包含,依赖的的文件包括:
1)
Visual Basic 6.0的运行支持文件:msvbvm60。dll,放在系统目录System32下面.
2)
工程所使用到的控件文件,包括自定义控件和第三方控件文件,如。
3)
工程所使用到的其他DLL组件,包括自已编写的ActiveX DLL,以及第三方的公共组件等,
如.
4)
工程中所涉及到要读写的其他独立文件。
注:VB在编译过程中,可能会生成lib、exp等一些附加文件,这些文件在编译之后可以删除。
1.3
VB对象的基本概念:
Visual Basic 6。0是基于对象的编程,不是完全面向对象的编程,对象的继承、多态等特性不能
很好地处理;但使用对象编程仍是VB中很重要的功能,在日常工作中大量使用.
1.3.1
窗体对象:
前面提到的窗体,VB中也是一种Form类的对象,它拥有属性、方法、事件,对Form,也完全
可以按照类的构建方法,自已再增加属性、方法、事件;除了可以直接通过窗体名使用窗体外,
也可以通过对象使用模式,定义基于窗体类的对象,实例化之后进行使用,如下面的代码:
方法1:
Form1。Show
方法2:
Dim objForm as Form1
Set objForm = New Form1
objForm。Show
1.3.2
类模块与对象:
VB中的类模块(Class)是专门用来定义类、实现对象处理的文件,定义使用一个对象的步骤如
下:
1.
在工程中添加一个类模块,并命名,比如cls
Person
2.
在类模块中添加属性、方法、事件,比如添加两个属性”Name、Sex”,添加两个方法"Eat、
Sleep
",添加一个事件" GetIll"。
3.
在窗体中定义一个对象变量,并实例化,如:
Dim objPerson as clsPerson
Set objPerson = New clsPerson
或者
Dim objPerson as New clsPerson
4.
给该对象的属性赋值、读取,调用对象的方法。
5.
使用对象的事件比较特殊,需要使用WithEvents关键字,并且需要将对象定义为窗体模块
级的、单独使用New关键字进行实例化:
Private WithEvents mobjPerson as clsPerson


发布评论