1、Visual Basic程序设计与应用电子教案演示演示 退出退出 第第 1 章章第第 2 章章第第 3 章章第第 4 章章第第 5 章章第第 6 章章第第 7 章章第第 8 章章第第 9 章章特点特点历史渊源历史渊源 安装步骤安装步骤集成开发环境集成开发环境工程管理工程管理程序编辑程序编辑程序调试程序调试程序创建步骤程序创建步骤 1964年,美国计算机科学家年,美国计算机科学家G.Kemeny和和T.Kurtz在在Dartmouth 学院学院创造了创造了BASIC语言语言。这是。这是一种适用于初一种适用于初学者的人机交互式语言学者的人机交互式语言,其名,其名BASIC既是既是Beginners
2、 Allpurpose Symbolic Instruction Code(初学者通用的符初学者通用的符号指令代码)号指令代码)的简写的简写。Dartmouth BASIC是为校园的大学生们创造的,目的是为校园的大学生们创造的,目的是使大学生是使大学生能够比较轻松地学习能够比较轻松地学习计算机计算机编程。编程。1983 年,年,Dartmouth BASIC 被演变成为了被演变成为了True BASIC,成为了完全结构化的程序设计语言。成为了完全结构化的程序设计语言。1975 年,年,Microsoft 公司的两位创始人,公司的两位创始人,Bill Gates 和和 Paul Allen 为为
3、MITS公司生产的早期个人计算机公司生产的早期个人计算机Altair 8800开发了一个开发了一个BASIC解解释器。释器。1985年,年,Microsoft公司推出了一种类似于公司推出了一种类似于True BASIC的完全结构的完全结构化的化的BASIC语言语言 QuickBASIC 1.0。QuickBASIC 具有强大的具有强大的集成开发环境,并且既包含对集成开发环境,并且既包含对 BASIC 代码的解释功能,也包含对代码的解释功能,也包含对 BASIC 代码的一定的编译功能。因此,与代码的一定的编译功能。因此,与 True BASIC 追求简约的追求简约的设计思路不同,设计思路不同,Q
4、uickBASIC 在设计上更注重语言功能的完整和执在设计上更注重语言功能的完整和执行效率的提高,它成为了那个时代运行速度最快的行效率的提高,它成为了那个时代运行速度最快的 BASIC 语言。语言。由于在由于在BASIC上取得的空前成功,上取得的空前成功,Microsoft公司成为了公司成为了BASIC语语言在市场发展上的领导者和言在市场发展上的领导者和BASIC语言标准的实际制定者。语言标准的实际制定者。1991 1991 年,年,MicrosoftMicrosoft公司开发了公司开发了Visual Basic 1.0Visual Basic 1.0,其集成了其集成了 QuickBASICQ
5、uickBASIC 的语法特性与解释编译功能,并提供了一个可视化的的语法特性与解释编译功能,并提供了一个可视化的开发环境,允许程序员在一个所见即所得的图形界面中迅速完成开开发环境,允许程序员在一个所见即所得的图形界面中迅速完成开发任务。为了表明发任务。为了表明Visual BasicVisual Basic是一种基础程序设计语言,是一种基础程序设计语言,MicrosoftMicrosoft特完全大写的特完全大写的“BASIC”BASIC”改为了大小写混合的改为了大小写混合的“Basic”Basic”。1993 1993 年,年,Microsoft Microsoft 发布了发布了 Visual
6、 Basic 3.0 Visual Basic 3.0,使,使Visual Visual Basic Basic 具有了支持具有了支持ODBCODBC、OLEOLE的特性。的特性。19951995年发布了年发布了Visual Basic Visual Basic 4.04.0,19961996年发布了年发布了Visual Basic 5.0Visual Basic 5.0。1998 1998 年发布了年发布了 Visual Basic 6.0 Visual Basic 6.0。Visual Basic 6.0 Visual Basic 6.0 是传是传统统 Visual BasicVisual
7、 Basic向向 Visual Basic.NET Visual Basic.NET 转变前的最后一个版本,转变前的最后一个版本,也是传统也是传统 Visual Basic Visual Basic 中功能最全、应用最广的一个版本。中功能最全、应用最广的一个版本。可视化可视化:Visual的英文含义既是可视化,在可视化环境下的英文含义既是可视化,在可视化环境下创作前端界面也就如同摆放积木。创作前端界面也就如同摆放积木。面向对象面向对象:面向对象编程是建立在类的基础上的,可通过:面向对象编程是建立在类的基础上的,可通过类的封装而使源程序更加便于维护。类的封装而使源程序更加便于维护。部件技术部件技
8、术:部件技术:部件技术建立在面向对象技术基础之上。可将建立在面向对象技术基础之上。可将部件部件看作为类的包装,每一个部件包含着许多相互关联的类。看作为类的包装,每一个部件包含着许多相互关联的类。事件驱动事件驱动:事件驱动则是指程序的执行路线可以基于用户:事件驱动则是指程序的执行路线可以基于用户的操作步骤来确定的。的操作步骤来确定的。(1)启动安装程序。)启动安装程序。(2)输入用户)输入用户ID号号 (3)输入姓名、用户单位)输入姓名、用户单位 (4)选择安装路径。)选择安装路径。(5)选择安装方式,有)选择安装方式,有“典型安装典型安装”和和“自定义自定义安装安装”两种安装方式。两种安装方式
9、。在添加或删除在添加或删除 Visual Basic Visual Basic 部件,需要进行以下操部件,需要进行以下操作:作:(1 1)重新启动安装程序。)重新启动安装程序。(2 2)在安装程序对话框中选取)在安装程序对话框中选取“自定义自定义”按钮。按钮。(3 3)在)在“自定义自定义”对话框的对话框的“选项选项”列表框中选列表框中选定要安装的部件(或撤消选定要删除的部件)。定要安装的部件(或撤消选定要删除的部件)。集成开发环境集成开发环境 Visual Basic 6.0集成开发环境由集成开发环境由菜单菜单、工具栏工具栏、工具箱工具箱、窗体设计器、属性窗口、工程管理器、代码编辑器组成。窗
10、体设计器、属性窗口、工程管理器、代码编辑器组成。Visual Basic 6.0 菜单是在集成开发环境下发布命令的最基本手段。菜单是在集成开发环境下发布命令的最基本手段。Visual Basic 顶级菜单有:顶级菜单有:文件文件、编辑编辑、视图视图、工程工程、格式格式、调试调试、运行运行、工具工具、外接程序外接程序,但菜单命令是通过子菜单中的子菜,但菜单命令是通过子菜单中的子菜单项发出的。单项发出的。文件菜单文件菜单 文件菜单主要用于建立、打开、文件菜单主要用于建立、打开、添加、移去、保存工程和文件,添加、移去、保存工程和文件,包括:新建工程包括:新建工程、打开工程、打开工程、添加工程添加工程
11、、移除工程、移除工程、保存工、保存工程程、工程另存为、工程另存为、保存文件、保存文件、文件另存为文件另存为、打印、打印、打印设置、打印设置、生成工程生成工程 等子菜单项。等子菜单项。编辑菜单编辑菜单 在对工程进行修改时,编辑菜单在对工程进行修改时,编辑菜单用于各种编辑操作用于各种编辑操作。包括:撤消、。包括:撤消、重复、剪切、复制、粘贴、粘贴链重复、剪切、复制、粘贴、粘贴链接、删除、全选、查找、缩进、凸接、删除、全选、查找、缩进、凸出、插入文件、属性方法列表、出、插入文件、属性方法列表、快速信息、参数信息书签等子菜单快速信息、参数信息书签等子菜单项。项。视图菜单视图菜单 视图菜单用于显示各种窗
12、口及和窗视图菜单用于显示各种窗口及和窗口有关的操作口有关的操作。包括:代码窗口、对。包括:代码窗口、对象窗口、定义、最后位置、对象浏览象窗口、定义、最后位置、对象浏览器、立即窗口、本地窗口、监视窗口、器、立即窗口、本地窗口、监视窗口、调用堆栈、工程资源管理器、属性窗调用堆栈、工程资源管理器、属性窗口、窗体布局窗口、属性页、表、缩口、窗体布局窗口、属性页、表、缩放、显示窗格、工具箱、调色板、工放、显示窗格、工具箱、调色板、工具栏等子菜单项。具栏等子菜单项。工程菜单工程菜单 工程菜单用于为当前工程创建工程菜单用于为当前工程创建模块、作对象引用或提供各种设模块、作对象引用或提供各种设计器计器。包括:
13、添加窗体、添加。包括:添加窗体、添加 MDI窗体、添加模块、添加用户窗体、添加模块、添加用户控件、添加属性页、添加用户文控件、添加属性页、添加用户文档、添加设计器、添加文件、移档、添加设计器、添加文件、移除、引用、部件、工程属性等子除、引用、部件、工程属性等子菜单项。菜单项。格式菜单格式菜单 格式菜单用于界面设计,能使格式菜单用于界面设计,能使界面中的控件规范排列界面中的控件规范排列。包括:。包括:对齐、统一尺寸、按网格调整大对齐、统一尺寸、按网格调整大小、水平间距、垂直间距、在窗小、水平间距、垂直间距、在窗体中居中对开、顺序、锁定控件体中居中对开、顺序、锁定控件等子菜单项。等子菜单项。调试菜
14、单调试菜单 调试菜单用于调试、监视程序调试菜单用于调试、监视程序。包括:逐语句、逐过程、跳出、包括:逐语句、逐过程、跳出、运行到光标处、添加监视、编辑运行到光标处、添加监视、编辑监视、快速监视、切换断点、清监视、快速监视、切换断点、清除所有断点、设置下一条语句、除所有断点、设置下一条语句、显示下一语句等子菜单项。显示下一语句等子菜单项。运行菜单运行菜单 查询菜单中各条菜单命令用于查询菜单中各条菜单命令用于数据库表的查询及相关操作数据库表的查询及相关操作。所。所提供的各种查询设计工具,使用提供的各种查询设计工具,使用户能够通过可视化工具创建户能够通过可视化工具创建SQL语句,实现对数据库的查询、
15、修语句,实现对数据库的查询、修改。改。工具菜单工具菜单 工具菜单包括:添加过程、过工具菜单包括:添加过程、过程属性、菜单编辑器、选项、发程属性、菜单编辑器、选项、发布等子菜单项。布等子菜单项。外接程序菜单外接程序菜单 外接程序菜单工程菜单用于为外接程序菜单工程菜单用于为当前工程创建含:可视化数据管当前工程创建含:可视化数据管理器、外接程序管理器等子菜单理器、外接程序管理器等子菜单项。项。Visual Basic 6.0 工具栏的作用是可以通过其上面的图标按钮执行菜单命令,工具栏的作用是可以通过其上面的图标按钮执行菜单命令,由此加快操作速度。由此加快操作速度。Visual Basic能提供能提供
16、“编辑编辑”、“标准标准”、“窗体编辑器窗体编辑器”、“调试调试”等几个工具栏,用户也可以按自己的需要等几个工具栏,用户也可以按自己的需要“自定义自定义”工具栏,可以通过工具栏,可以通过“视图视图工具栏工具栏”菜单项下的子菜单项选取菜单项下的子菜单项选取它们它们。Visual Basic各种工具栏中最常用的是各种工具栏中最常用的是“标准工具栏标准工具栏”Visual Basic 6.0 工具箱是工具箱是Visual Basic用于为开发提供控件的面板,通过它用于为开发提供控件的面板,通过它可以往设计中的窗体设置各种控件。可以往设计中的窗体设置各种控件。除了除了Visual Basic 内置控件
17、之外,用户还可以通过菜单内置控件之外,用户还可以通过菜单“工程工程部件部件”打开打开“部件部件”对话框,从中能添加控件、设计对话框,从中能添加控件、设计器或可插入对象到工具箱中,也可以引用已加载的控件工程。器或可插入对象到工具箱中,也可以引用已加载的控件工程。Visual Basic是以工程为单位创建程序是以工程为单位创建程序的,其通过工程文件的,其通过工程文件(.vbp)获得工程信息,获得工程信息,并通过并通过“工程资源管理器工程资源管理器”、“工程属性工程属性”窗口实现对程序工程的有效管理。窗口实现对程序工程的有效管理。1 1标准标准EXEEXE:最常用的工程类型,用来创建最常用的工程类型
18、,用来创建WindowsWindows环境下的标准可执行程序(环境下的标准可执行程序(.EXE.EXE文件)。文件)。2 2ActiveX DLLActiveX DLL:用来创建能够与应用程序运行在同一用来创建能够与应用程序运行在同一进程内的进程内的ActiveX DLLActiveX DLL部件。部件。3 3ActiveX EXEActiveX EXE:用来创建在应用程序进程之外工作的用来创建在应用程序进程之外工作的ActiveX EXEActiveX EXE部件。部件。4 4ActiveX ActiveX 控件:用来创建可视开发环境下的前端界面控件:用来创建可视开发环境下的前端界面元素。元
19、素。程序工程由文件组成,主要文件类型有:程序工程由文件组成,主要文件类型有:工程文件工程文件(.vbp)。标准模块文件标准模块文件(.bas)。窗体的文件窗体的文件(.frm)。窗体的二进制数据文件窗体的二进制数据文件(.frx)。类模块文件类模块文件(.cls)。包含包含 ActiveX 控件的文件控件的文件(.ocx)。通过菜单命令通过菜单命令“工程工程工程属性工程属性”可以打开可以打开“工程工程属性属性”对话框。对话框。在此可以进行有在此可以进行有关工程的名称、关工程的名称、类型、启动模块、类型、启动模块、版本号、版本信版本号、版本信息、程序图标、息、程序图标、编译方式、编译编译方式、编
20、译要求等诸多工程要求等诸多工程属性的设置。属性的设置。在编辑程序时,经常用到的工具有:在编辑程序时,经常用到的工具有:1、窗体设计器,其用于编辑用户界面。、窗体设计器,其用于编辑用户界面。2、代码编辑器,其用于编辑源程序代码。、代码编辑器,其用于编辑源程序代码。3、属性窗口,其用于设置窗体或控件的属性值。、属性窗口,其用于设置窗体或控件的属性值。在调试程序时,最常使用的调试方法有:在调试程序时,最常使用的调试方法有:1、在程序中设置断点,进行中断调试。、在程序中设置断点,进行中断调试。2、通过、通过“立即窗口立即窗口”进行数据测试。进行数据测试。3、使程序逐条语句,或逐过程执行,进行单步调。、
21、使程序逐条语句,或逐过程执行,进行单步调。当在当在Visual Basic 6.0中创建应用程序时,一般需要经历以中创建应用程序时,一般需要经历以下基本步骤:下基本步骤:1、分析程序问题。、分析程序问题。2、建立程序工程。、建立程序工程。3、设计用户界面。、设计用户界面。4、编写并调试程序代码。、编写并调试程序代码。5、保存工程资源。、保存工程资源。6、对源程序进行编译。、对源程序进行编译。程序创建举例:程序创建举例:考虑创建一个窗体程序,其用于商品销售时的累积计价。考虑创建一个窗体程序,其用于商品销售时的累积计价。具体考虑是:。具体考虑是:。1、添加、添加“文本框控件文本框控件”,用于商品的
22、单价、数量的输入。,用于商品的单价、数量的输入。2、添加、添加“命令按钮控件命令按钮控件”,并在其,并在其Click事件中添加事件中添加“计计价程序价程序”,用于商品计价,用于商品计价。3、添加、添加“标签控件标签控件”,用于商品价值和商品总价的输出。,用于商品价值和商品总价的输出。常量常量变量变量基本数据类型基本数据类型数组数组枚举类型枚举类型运算符运算符标识符命名规则标识符命名规则自定义类型自定义类型 常量即是用标识符来表示数值或字符串,由此可以提常量即是用标识符来表示数值或字符串,由此可以提高源代码的可读性和可维护性。高源代码的可读性和可维护性。常量有两种来源:常量有两种来源:1、系统常
23、量,其由、系统常量,其由Visual Basic或引用的对象提供。或引用的对象提供。2、用户自定义常量,其需要用、用户自定义常量,其需要用 Const 语句来声明。语句来声明。定义常量定义常量 用户自定义常量在使用前需要定义,由此使该用户自定义常量在使用前需要定义,由此使该标识标识符能符能够被程序识别。其语法是:够被程序识别。其语法是:Public/Private Const 常量名常量名As 类型类型=常量表达式常量表达式 例如:例如:Const PI=3.14159265358979 Const MaxPlanets As Integer=9 使用常量使用常量常量在被定义之后,就可以在代码
24、中作为数据使用。常量在被定义之后,就可以在代码中作为数据使用。例如:例如:Const MaxPlanets As Integer=9Const People As Integer=19Static SolarSystem(1 To MaxPlanets)If WorldPop People Then Exit Sub 变量用来等待处理的临时存储数据,可以把变量看作内存变量用来等待处理的临时存储数据,可以把变量看作内存中存放未知值的所在处。中存放未知值的所在处。变量有名字和数据类型,在使用之前需要声明。变量有名字和数据类型,在使用之前需要声明。声明变量声明变量 声明变量就是事先将变量通知程序,由
25、此使变量的使声明变量就是事先将变量通知程序,由此使变量的使用合法。用合法。语法:语法:Dim/Private/Public/Static 变量名变量名 As 类型类型 例如:例如:Dim I As Integer Private YourName As String,BillsPaid As Currency Public Test,Amount,J As Integer 变量范围变量范围 变量范围是指变量能够在多大的范围内被访问到。变量范围是指变量能够在多大的范围内被访问到。可可以根据变量范围将变量分成以下三类:以根据变量范围将变量分成以下三类:1、过程级变量过程级变量。2、模块级变量模块级
26、变量。3、公用变量公用变量。过程级变量过程级变量 过程级变量也叫过程级变量也叫局部变量局部变量,其在过程内声明,并且只有,其在过程内声明,并且只有在声明它们的过程内才能被识别。在声明它们的过程内才能被识别。过程级变量只能用过程级变量只能用 Dim 或或 Static 关键字来声明。关键字来声明。例如:例如:Dim intTemp As Integer Static intPermanent As Integer 用用 Dim 声明的变量是声明的变量是动态变量动态变量,而用,而用 Static 声明的变声明的变量则是量则是静态变量静态变量。模块级变量模块级变量 模块级变量在模块级变量在模块顶部的
27、声明段模块顶部的声明段用用 Private或或Dim关关键字声明,并且所在模块的所有过程都可使用该变量。键字声明,并且所在模块的所有过程都可使用该变量。例如:例如:Private intTemp As Integer 公用变量公用变量 公用变量在公用变量在模块的声明段模块的声明段使用使用 Public 关键字声明,关键字声明,其可以被应用程序的所有过程。其可以被应用程序的所有过程。例如:例如:Public intTemp As Integer 所有变量都具有数据类型,以决定能够存储哪种数据。所有变量都具有数据类型,以决定能够存储哪种数据。除变量外,数据类型也用于其他场合。如在给对象属除变量外,
28、数据类型也用于其他场合。如在给对象属性赋值时,这个值就有数据类型;函数的参数也有数据性赋值时,这个值就有数据类型;函数的参数也有数据类型。事实上,在类型。事实上,在 Visual Basic 中,凡是涉及数据就与中,凡是涉及数据就与数据类型有关,包括:变量、常量、数组,以及函数、数据类型有关,包括:变量、常量、数组,以及函数、过程中的参数,等等。过程中的参数,等等。数值型数据数值型数据 Visual Basic 支持以下几种数值型数据:支持以下几种数值型数据:Integer(整型)、整型)、Long(长整型)、长整型)、Single(单精度单精度浮点型)、浮点型)、Double(双精度浮点型)
29、、双精度浮点型)、Currency(货币货币型),另外,型),另外,Byte(字节型)也可用于数值计算。字节型)也可用于数值计算。所有数值变量都可相互赋值。在将浮点数赋予整数之所有数值变量都可相互赋值。在将浮点数赋予整数之前,前,Visual Basic将浮点数的小数部分四舍五入到整数。将浮点数的小数部分四舍五入到整数。String 数据类型数据类型 String型变量用于存储字符串。型变量用于存储字符串。例如:例如:Dim S1 As String,Dim S2 As String*10 S1=Database S2=Database 上述变量中,上述变量中,S1是一个可变长度的是一个可变长
30、度的String变量,随着对变量,随着对其赋予新数据,它的长度可增可减。而其赋予新数据,它的长度可增可减。而S2则是具有固定则是具有固定长度长度String 型变量。型变量。Boolean 数据类型数据类型 Boolean是逻辑型变量,其值只能是是逻辑型变量,其值只能是True、False。Boolean 的缺省值为的缺省值为 False。Date 数据类型数据类型 用于存储用于存储Date 和和 Time 值。值。例如:例如:Dim SomeDate As Date SomeDate=#1980-03-16#SomeDate=#3-6-93 13:20#Object 数据类型数据类型 Obj
31、ect 变量采用变量采用 32 位(位(4 个字节)地址来存储对象,个字节)地址来存储对象,该地址可用于引用应用程序中的对象。该地址可用于引用应用程序中的对象。例如:例如:Dim objDb As Object Set objDb=OpenDatabase(c:Vb5Biblio.mdb)Variant 数据类型数据类型 Variant 型是型是Visual Basic的的缺省数据类型缺省数据类型,能够存储所,能够存储所有类型的数据。有类型的数据。例如:例如:Dim SomeValue SomeValue=17 SomeValue=SomeValue-15 SomeValue=U&SomeVa
32、lue 数组使用相同名字引用一系列变量,并用数字(索引)数组使用相同名字引用一系列变量,并用数字(索引)来识别它们。来识别它们。语法:语法:Dim/Private/Public/Static数组名(数组名(下界下界 To 上界)上界)As 数据类型数据类型 一个数组中的所有元素具有相同的数据类型。一个数组中的所有元素具有相同的数据类型。使用数组使用数组 例如:例如:Dim Sums(101 To 120)As String Dim X(20)As Integer,Y(10,5 To 10)As Long Sums(110)=“ABCDEF”X(0)=100 Y(0,8)=1000 枚举类型提供
33、了方便的方法处理名称与常数数值的相枚举类型提供了方便的方法处理名称与常数数值的相互关联。互关联。声明枚举类型的语法是:声明枚举类型的语法是:Public|Private Enum 类型名类型名 End EnumPublic Enum Days Sunday Monday Tuesday Wednesday Thursday Friday SaturdayEnd Enum 例如,可以为跟星期相关联的例如,可以为跟星期相关联的一组整数常数,声明一个枚举类一组整数常数,声明一个枚举类型,然后在代码中使用星期的名型,然后在代码中使用星期的名称而不使用其整数数值。称而不使用其整数数值。自定义数据类型是由
34、一些基本类型的数据元素构成的自定义数据类型是由一些基本类型的数据元素构成的结合体。结合体。声明自定义类型的语法是:声明自定义类型的语法是:Private|Public Type自定义类型名自定义类型名 元素元素 As 类型类型 元素元素 As 类型类型 End Type例如:例如:Private Type StuRecord Name As String Birthday As Date Others As Variant End Type Dim myRecord As StuRecord myRecord.Name=杨明杨明 myRecord.Birthday=#1970-06-18#标识
35、符来命名标识符来命名在在Visual Basic中,常量、变量、数组、过程、函数、类等,中,常量、变量、数组、过程、函数、类等,都依靠标识符来命名;但命名必须遵循一定的规则。其具都依靠标识符来命名;但命名必须遵循一定的规则。其具体规则有:体规则有:(1)标识符由字母()标识符由字母(AZ,az),),数字(数字(09)或下化线)或下化线(_)组成。)组成。(2)长度不能超过)长度不能超过255个字符。个字符。(3)自定义的标识符不能和)自定义的标识符不能和Visual Basic 中的运算符、语中的运算符、语句,以及系统已有的函数、过程名等关键字同名。句,以及系统已有的函数、过程名等关键字同名
36、。程序中对数据的基本加工,是依靠运算符实现的。在程序中对数据的基本加工,是依靠运算符实现的。在Visual Basic中运算符的类型有:中运算符的类型有:赋值运算符赋值运算符、算术运算符算术运算符、比较运算符比较运算符、连接运算符连接运算符、逻辑运算符逻辑运算符。赋值运算符赋值运算符 Visual Basic中的赋值运算符中的赋值运算符“=”用来给变量、数组或用来给变量、数组或对象的属性赋值,即把运算符右边的内容赋给运算符左对象的属性赋值,即把运算符右边的内容赋给运算符左边的变量。边的变量。语法格式:变量语法格式:变量=表达式表达式算术运算符算术运算符 用来进行算术运算,有:用来进行算术运算,
37、有:+(加)、(加)、-(减)、(减)、*(乘)、(乘)、/(除)、(除)、(整除)、(整除)、Mod(求模)、求模)、(乘方)等运算(乘方)等运算符。符。比较运算符比较运算符 比较运算符包括:比较运算符包括:(小于)(小于)、(大于)、(大于)、=(大于或等于)、(大于或等于)、(不等于)和(不等于)和=(等(等于)于),用来反映两个数值或字符串表达式之间的关系。,用来反映两个数值或字符串表达式之间的关系。关系成立,返回关系成立,返回True(真);关系不成立,返回真);关系不成立,返回False(假);两个表达式中若有假);两个表达式中若有Null,则返回则返回Null。连接运算符连接运算
38、符&、+运算符都能用于进行两个字符串的连接,但运算符都能用于进行两个字符串的连接,但&运算符强制两个表达式按字符串连接,尽管被连接的表运算符强制两个表达式按字符串连接,尽管被连接的表达式不是字符串也是如此。达式不是字符串也是如此。而而+运算符则较复杂,当两个表达式都是字符串时按运算符则较复杂,当两个表达式都是字符串时按字符串连接,否则视具体情况会有不同结果。字符串连接,否则视具体情况会有不同结果。在进行字符串连接时一般使用在进行字符串连接时一般使用&运算符。运算符。逻辑运算符逻辑运算符 逻辑运算符包括:逻辑运算符包括:Not(非)、非)、And(与)、与)、Or(或)或)、Xor(异或)、异或
39、)、Equ(逻辑等于)和逻辑等于)和Imp(逻辑蕴涵),逻辑蕴涵),用于表达两个逻辑表达式之间的关系。用于表达两个逻辑表达式之间的关系。在进行逻辑运算时,只要参入运算的表达式中有一个在进行逻辑运算时,只要参入运算的表达式中有一个为为 Null,则将返回则将返回 Null。运算符优先顺序运算符优先顺序 在表达式中,当运算符不止一种时,要先处理算术运在表达式中,当运算符不止一种时,要先处理算术运算符,接着处理比较运算符,然后再处理逻辑运算符。算符,接着处理比较运算符,然后再处理逻辑运算符。算术运算符优先级由高至低是算术运算符优先级由高至低是:指数运算:指数运算()、负数、负数()、乘法和除法、乘法
40、和除法(*、/)、整数除法、整数除法()、求模运算、求模运算(Mod)、加法和减法加法和减法(+、)、字符串连接、字符串连接(&)。逻辑运算符优先级由高至低是逻辑运算符优先级由高至低是:Not、And、Or、Xor、Eqv、Imp。所有比较运算符的优先顺序都相同所有比较运算符的优先顺序都相同。自定义数据类型自定义数据类型 在模块的声明部分可以使用在模块的声明部分可以使用Type语句建立自定义数据语句建立自定义数据类型。类型。语法格式:语法格式:Private|Public Type自定义类型名自定义类型名 元素元素 As 类型类型 End Type动态数组(动态数组(1)创建动态数组的步骤:创
41、建动态数组的步骤:第一步是声明动态数组,其和声明固定大小的数组类第一步是声明动态数组,其和声明固定大小的数组类似,但给数组附以一个空维数表,例如:似,但给数组附以一个空维数表,例如:Dim DynArray()第二步是用第二步是用ReDim 语句在程序执行过程中给数组指定语句在程序执行过程中给数组指定维数和分配实际的元素个数,例如:维数和分配实际的元素个数,例如:ReDim DynArray(4 to 12)动态数组(动态数组(2)值得注意的是:值得注意的是:ReDim 语句与语句与 Dim 语句、语句、Static 语句语句不同,不同,ReDim 语句是一个可执行语句,通过在应用程序语句是一
42、个可执行语句,通过在应用程序中执行中执行ReDim 语句,给维数和元素个数待定的数组指定语句,给维数和元素个数待定的数组指定维数和元素个数。维数和元素个数。在程序中还可以使用变量设置动态数组的边界。在程序中还可以使用变量设置动态数组的边界。例如:例如:ReDim DynArray(X,Y)程序流程控制程序流程控制模块概念模块概念程序过程程序过程常用内置函数常用内置函数面向对象编程面向对象编程程序异常处理程序异常处理模块概念模块概念 模块是构造程序的基本元素。模块可大可小,它可以模块是构造程序的基本元素。模块可大可小,它可以是所建程序系统中的一个子程序系统,也可以是一个是所建程序系统中的一个子程
43、序系统,也可以是一个功能程序块,或者是功能程序块内的一个函数、过程。功能程序块,或者是功能程序块内的一个函数、过程。在在Visual BasicVisual Basic中,程序中的模块首先体现为程序文中,程序中的模块首先体现为程序文件,如:标准程序文件、类程序文件、窗体程序文件,件,如:标准程序文件、类程序文件、窗体程序文件,等等,它们是构造程序的基本模块单位。接着是程序等等,它们是构造程序的基本模块单位。接着是程序文件中的过程、函数、属性、方法等,它们是单元模文件中的过程、函数、属性、方法等,它们是单元模块,是构造程序的最小模块单位。块,是构造程序的最小模块单位。在在 Visual Basi
44、c 中,中,过程是构建程序逻辑部件的最小单元过程是构建程序逻辑部件的最小单元成分成分。使用过程编程至少有两大好处。使用过程编程至少有两大好处。其一:可以将程序划分成更小的逻辑单元,这其一:可以将程序划分成更小的逻辑单元,这有利于简化有利于简化程序程序。其二:过程可以供多处调用,这其二:过程可以供多处调用,这有利于代码重用有利于代码重用。在在 Visual Basic 中使用的过程有:中使用的过程有:Sub 过程过程不返回值;称做不返回值;称做通用过程通用过程或或子过程子过程。Function 过程过程返回值;称做返回值;称做函数过程。函数过程。另外,窗体、控件等,还可以提供另外,窗体、控件等,
45、还可以提供事件过程事件过程。通用过程通用过程 通用过程由用户根据需要自主建立,其作用是可以把通用过程由用户根据需要自主建立,其作用是可以把需要完成一定功能的代码放在过程,供诸多功能操作调需要完成一定功能的代码放在过程,供诸多功能操作调用,由此提高代码利用率,并使其更便于维护。用,由此提高代码利用率,并使其更便于维护。定义通用过程的语法是:定义通用过程的语法是:Private|PublicStatic Sub 过程名过程名(形式参数列表形式参数列表)语句块语句块 End Sub调用通用过程调用通用过程 调用过程的语法:调用过程的语法:Call 过程名(实际参数列表)过程名(实际参数列表)或:或:
46、过程名过程名 实际参数列表实际参数列表 其中,实际参数列表,是需要往被调用过程传递的具体数其中,实际参数列表,是需要往被调用过程传递的具体数据;因此,其数据类型需要和被调用过程的形式参数保持一据;因此,其数据类型需要和被调用过程的形式参数保持一致。实际参数可以是常量、变量、数组,或复杂表达式,但致。实际参数可以是常量、变量、数组,或复杂表达式,但无论是什么都必须有确定的值。无论是什么都必须有确定的值。函数过程函数过程 通过通过Function 语句创建的函数过程可以返回一个值到语句创建的函数过程可以返回一个值到调用过程处。调用过程处。函数过程的语法是:函数过程的语法是:Function 函数名
47、函数名(形式参数列表形式参数列表)As 类型类型 语句块语句块 End Function 函数过程需要返回的值的类型由函数过程需要返回的值的类型由As 子句设置。子句设置。调用函数过程调用函数过程 把函数看作一个数,可以放在赋值号右端。把函数看作一个数,可以放在赋值号右端。例如:例如:Tx1=MyFunc(5)用做参数。用做参数。例如:例如:Tx2=MyFunc(MyFunc(5)事件过程事件过程 窗体、控件的某个事件的发生时,会自动调用它的该窗体、控件的某个事件的发生时,会自动调用它的该事件过程。因此,事件过程往往是由用户事件触发。事件过程。因此,事件过程往往是由用户事件触发。控件的事件过程
48、名,由控件的实际名字、下划线和事控件的事件过程名,由控件的实际名字、下划线和事件名组合而成。件名组合而成。例如,一个名为例如,一个名为 cmdPlay 的命令按钮被的命令按钮被单击时所调用的事件过程是:单击时所调用的事件过程是:cmdPlay_Click。窗体也有事件,但其事件过程命名规则却和一般控件窗体也有事件,但其事件过程命名规则却和一般控件有所不同。窗体事件名是:词汇有所不同。窗体事件名是:词汇“Form”、下划线和事件下划线和事件名的组合。例如,窗体单击时所调用的事件过程是:名的组合。例如,窗体单击时所调用的事件过程是:Form_Click。通用、函数过程和事件过程的关系通用、函数过程
49、和事件过程的关系过程参数传递方法过程参数传递方法 1.按值传递参数按值传递参数 按值传递参数时,所传递的是实际参数的值。这时实按值传递参数时,所传递的是实际参数的值。这时实际参数所在内存地址处所存储的数值传给了被调用过程际参数所在内存地址处所存储的数值传给了被调用过程的形式参数;这时,实参、形参分别有不同的内存地址。的形式参数;这时,实参、形参分别有不同的内存地址。如果在被调用过程中改变了这个参数值,则所作变动只如果在被调用过程中改变了这个参数值,则所作变动只会到形参,不会影响实参。会到形参,不会影响实参。通过关键字通过关键字ByVal可以声明按值传递的参数。可以声明按值传递的参数。过程参数传
50、递方法过程参数传递方法 2.按地址传递参数按地址传递参数 按地址传递参数时,所传递的是实际参数的地址。这按地址传递参数时,所传递的是实际参数的地址。这时的实参与形参具有相同的内存地址。因此,当按地址时的实参与形参具有相同的内存地址。因此,当按地址传递参数时,对形式参数所做的改变,也将随之反映到传递参数时,对形式参数所做的改变,也将随之反映到实际参数上来。实际参数上来。按地址传递参数在按地址传递参数在 Visual Basic 中是缺省的,并可以中是缺省的,并可以通过关键字通过关键字ByRef明确声明参数是按地址传递。明确声明参数是按地址传递。程序的基本运行方式是自顶向下地顺序执行各条语句,被程
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。