全国计算机等级考试二级VB基础教程电子教案.ppt_第1页
全国计算机等级考试二级VB基础教程电子教案.ppt_第2页
全国计算机等级考试二级VB基础教程电子教案.ppt_第3页
全国计算机等级考试二级VB基础教程电子教案.ppt_第4页
全国计算机等级考试二级VB基础教程电子教案.ppt_第5页
已阅读5页,还剩192页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、,Visual Basic程序设计基础教程电子教案,制作人:曾强聪,2004 年 4 月,课程内容,第 1 章,第 2 章,第 3 章,第 4 章,第 5 章,第 6 章,第 7 章,第 8 章,第1章 Visual Basic 6.0 基本知识,环境要求,安装步骤,集成开发环境,工程管理,程序编辑,程序调试,程序创建步骤,Visual Basic 的特点,可视化 :Visual的英文含义既是可视化,在可视化环境下创作前端界面也就如同摆放积木。 面向对象 :面向对象编程是建立在类的基础上的,其通过类的封装而使源程序更加便于维护。 部件编程 :部件编程则使软件创建如同组装一辆汽车。 事件驱动 :

2、事件驱动则是指程序的执行路线是基于用户的操作步骤来确定的。,环境要求,操作系统:NT Server 4.0、 NT Workstation 4.0、 Windows 95,或更高版本。 CPU:486DX/66 MHz 或更高的处理器。 内存:Windows 9598下要求24MB以上的内存,Windows NT下要求32MB以上。 磁盘空间:对于标准版或专业版,典型安装 48MB,完全安装 80MB。 其他设备:CD-ROM 驱动器,鼠标或其他光标控制设备。,安装步骤,(1)启动安装程序。 (2)输入用户ID号 (3)输入姓名、用户单位 (4)选择安装路径。 (5)选择安装方式,有“典型安装

3、”和“自定义安装”两种安装方式。,集成开发环境,工程类型,1、标准EXE工程:用来创建Windows环境下的标准可执行程序文件。 2、ActiveX DLL工程:用来创建能够与应用程序运行在同一进程内的ActiveX DLL部件。 3、ActiveX EXE工程:用来创建在应用程序进程外工作的ActiveX EXE部件。 4、ActiveX 控件工程:用来创建可视开发环境下的前端界面元素。,工程资源,程序工程由文件组成,主要文件类型有: 工程文件 (.vbp)。 标准模块文件 (.bas)。 窗体的文件 (.frm)。 窗体的二进制数据文件 (.frx)。 类模块文件 (.cls)。 包含 A

4、ctiveX 控件的文件 (.ocx)。,工程管理,Visual Basic是以工程为单位创建程序的,其通过工程文件(.vbp)获得工程信息,并通过“工程资源管理器”、“工程属性”窗口实现对程序工程的有效管理。,程序编辑,在编辑程序时,经常用到的工具有: 1、窗体设计器,其用于编辑用户界面。 2、代码编辑器,其用于编辑源程序代码。 3、属性窗口,其用于设置窗体或控件的属性值。,程序调试,在调试程序时,最常使用的调试方法有: 1、在程序中设置断点,进行中断调试。 2、通过“立即窗口”进行数据测试。 3、使程序逐条语句,或逐过程执行,进行单步调。,程序创建步骤,当在Visual Basic 6.0

5、中创建应用程序时,一般需要经历以下基本步骤: 1、分析程序问题。 2、建立程序工程。 3、设计用户界面。 4、编写并调试程序代码。 5、保存工程资源。 6、对源程序进行编译。,程序创建步骤,程序创建举例: 考虑创建一个窗体程序,其用于商品销售时的累积计价。 具体考虑是:。 1、添加“文本框控件”,用于商品的单价、数量的输入。 2、添加“命令按钮控件”,并在其Click事件中添加“计价程序”,用于商品计价 。 3、添加“标签控件”,用于商品价值和商品总价的输出。,集成开发环境(2),Visual Basic 6.0集成开发环境由菜单、工具栏、工具箱、窗体设计器、属性窗口、工程管理器、代码编辑器,

6、以及对象浏览器、窗体布局窗口、编程环境设置窗口等组成;它们是用户实施可视化开发所必须的成分。,Visual Basic 6.0 菜单,菜单是在集成开发环境下发布命令的最基本手段。Visual Basic 顶级菜单有:文件、编辑、视图、工程、格式、调试、运行、工具、外接程序,但菜单命令是通过子菜单中的子菜单项发出的。,文件菜单,文件菜单主要用于建立、打开、添加、移去、保存工程和文件,包括:新建工程 、打开工程 、添加工程 、移除工程 、保存工程 、工程另存为 、保存文件 、文件另存为 、打印 、打印设置 、生成工程 等子菜单项。,编辑菜单,在对工程进行修改时,编辑菜单用于各种编辑操作 。包括:撤

7、消、重复、剪切、复制、粘贴、粘贴链接、删除、全选、查找、缩进、凸出、插入文件、属性方法列表、快速信息、参数信息书签等子菜单项。,视图菜单,视图菜单用于显示各种窗口及和窗口有关的操作 。包括:代码窗口、对象窗口、定义、最后位置、对象浏览器、立即窗口、本地窗口、监视窗口、调用堆栈、工程资源管理器、属性窗口、窗体布局窗口、属性页、表、缩放、显示窗格、工具箱、调色板、工具栏等子菜单项。,工程菜单,工程菜单用于为当前工程创建模块、作对象引用或提供各种设计器 。包括:添加窗体、添加 MDI窗体、添加模块、添加用户控件、添加属性页、添加用户文档、添加设计器、添加文件、移除、引用、部件、工程属性等子菜单项。,

8、格式菜单,格式菜单用于界面设计,能使界面中的控件规范排列 。包括:对齐、统一尺寸、按网格调整大小、水平间距、垂直间距、在窗体中居中对开、顺序、锁定控件等子菜单项。,调试菜单,调试菜单用于调试、监视程序 。包括:逐语句、逐过程、跳出、运行到光标处、添加监视、编辑监视、快速监视、切换断点、清除所有断点、设置下一条语句、显示下一语句等子菜单项。,运行菜单,查询菜单中各条菜单命令用于数据库表的查询及相关操作 。所提供的各种查询设计工具,使用户能够通过可视化工具创建SQL语句,实现对数据库的查询、修改。,工具菜单,工具菜单包括:添加过程、过程属性、菜单编辑器、选项、发布等子菜单项。,外接程序菜单,外接程

9、序菜单工程菜单用于为当前工程创建含:可视化数据管理器、外接程序管理器等子菜单项。,Visual Basic 6.0 工具栏,工具栏的作用是可以通过其上面的图标按钮执行菜单命令,由此加快操作速度。 Visual Basic能提供“编辑”、“标准”、“窗体编辑器”、“调试”等几个工具栏,用户也可以按自己的需要“自定义”工具栏,可以通过“视图工具栏”菜单项下的子菜单项选取它们 。 Visual Basic各种工具栏中最常用的是“标准工具栏”,Visual Basic 6.0 工具箱,工具箱是Visual Basic用于为开发提供控件的面板,通过它可以往设计中的窗体设置各种控件。 除了Visual B

10、asic 内置控件之外,用户还可以通过菜单“工程部件”打开“部件”对话框,从中能添加控件、设计器或可插入对象到工具箱中,也可以引用已加载的控件工程。,第2章 数据类型及操作,常量,变量,基本数据类型,数组,枚举类型,运算符,标识符命名规则,自定义类型,常量,常量即是用标识符来表示数值或字符串,由此可以提高源代码的可读性和可维护性。 常量有两种来源: 1、系统常量,其由Visual Basic或引用的对象提供。 2、用户自定义常量,其需要用 Const 语句来声明。,定义常量,用户自定义常量在使用前需要定义,由此使该标识符能够被程序识别。其语法是: Public/ Private Const 常

11、量名As 类型 = 常量表达式 例如: Const PI = 3.14159265358979 Const MaxPlanets As Integer = 9,使用常量,常量在被定义之后,就可以在代码中作为数据使用。 例如: Const MaxPlanets As Integer = 9 Const People As Integer =19 Static SolarSystem (1 To MaxPlanets) If WorldPop People Then Exit Sub,变量,变量用来等待处理的临时存储数据,可以把变量看作内存中存放未知值的所在处。 变量有名字和数据类型,在使用之前需

12、要声明。,声明变量,声明变量就是事先将变量通知程序,由此使变量的使用合法。 语法:Dim/Private/Public/ Static 变量名 As 类型 例如: Dim I As Integer Private YourName As String, BillsPaid As Currency Public Test,Amount, J As Integer,变量范围,变量范围是指变量能够在多大的范围内被访问到。 可以根据变量范围将变量分成以下三类: 1、过程级变量。 2、模块级变量。 3、公用变量。,过程级变量,过程级变量也叫局部变量,其在过程内声明,并且只有在声明它们的过程内才能被识别。

13、 过程级变量只能用 Dim 或 Static 关键字来声明。 例如: Dim intTemp As Integer Static intPermanent As Integer 用 Dim 声明的变量是动态变量,而用 Static 声明的变量则是静态变量。,模块级变量,模块级变量在模块顶部的声明段用 Private或Dim关键字声明,并且所在模块的所有过程都可使用该变量。 例如: Private intTemp As Integer,公用变量,公用变量在模块的声明段使用 Public 关键字声明,其可以被应用程序的所有过程。 例如: Public intTemp As Integer,基本数据

14、类型,所有变量都具有数据类型,以决定能够存储哪种数据。 除变量外,数据类型也用于其他场合。如在给对象属性赋值时,这个值就有数据类型;函数的参数也有数据类型。事实上,在 Visual Basic 中,凡是涉及数据就与数据类型有关,包括:变量、常量、数组,以及函数、过程中的参数,等等。,数值型数据,Visual Basic 支持以下几种数值型数据: Integer(整型)、Long(长整型)、Single(单精度浮点型)、Double(双精度浮点型)、Currency(货币型),另外,Byte(字节型)也可用于数值计算。 所有数值变量都可相互赋值。在将浮点数赋予整数之前, Visual Basic

15、将浮点数的小数部分四舍五入到整数。,String 数据类型,String型变量用于存储字符串。 例如: Dim S1 As String, Dim S2 As String * 10 S1 = Database S2 = Database 上述变量中,S1是一个可变长度的String变量,随着对其赋予新数据,它的长度可增可减。而S2则是具有固定长度String 型变量。,Boolean 数据类型,Boolean是逻辑型变量,其值只能是True、 False。Boolean 的缺省值为 False。,Date 数据类型,用于存储Date 和 Time 值。 例如: Dim SomeDate As

16、 Date SomeDate = #1980-03-16# SomeDate = #3-6-93 13:20#,Object 数据类型,Object 变量采用 32 位(4 个字节)地址来存储对象,该地址可用于引用应用程序中的对象。 例如: Dim objDb As Object Set objDb = OpenDatabase (c:Vb5Biblio.mdb),Variant 数据类型,Variant 型是Visual Basic的缺省数据类型,能够存储所有类型的数据。 例如: Dim SomeValue SomeValue = 17 SomeValue = SomeValue - 15

17、SomeValue = U & SomeValue,数组,数组使用相同名字引用一系列变量,并用数字(索引)来识别它们。 语法: 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,枚举类型,枚举类型提供了方便的方法处理名称与常数数值的相互关联。 声明枚

18、举类型的语法是: Public|Private Enum 类型名 End Enum,枚举类型,Public Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum,例如,可以为跟星期相关联的一组整数常数,声明一个枚举类型,然后在代码中使用星期的名称而不使用其整数数值。,自定义类型,自定义数据类型是由一些基本类型的数据元素构成的结合体。 声明自定义类型的语法是: Private|Public Type自定义类型名 元素 As 类型 元素 As 类型 End Type,自定义类型,例如: Private

19、 Type StuRecord Name As String Birthday As Date Others As Variant End Type Dim myRecord As StuRecord myRecord.Name = 杨明 myRecord. Birthday = #1970-06-18#,标识符来命名,在Visual Basic中,常量、变量、数组、过程、函数、类等,都依靠标识符来命名;但命名必须遵循一定的规则。其具体规则有: (1)标识符由字母(AZ,az),数字(09)或下化线(_)组成。 (2)长度不能超过255个字符。 (3)自定义的标识符不能和Visual Basi

20、c 中的运算符、语句,以及系统已有的函数、过程名等关键字同名。,运算符,程序中对数据的基本加工,是依靠运算符实现的。在Visual Basic中运算符的类型有:赋值运算符、算术运算符、比较运算符、连接运算符、逻辑运算符。,赋值运算符,Visual Basic中的赋值运算符“=”用来给变量、数组或对象的属性赋值,即把运算符右边的内容赋给运算符左边的变量。 语法格式:变量 = 表达式,算术运算符,用来进行算术运算,有:+(加)、-(减)、*(乘)、/(除)、(整除)、Mod (求模)、(乘方)等运算符。,比较运算符,比较运算符包括:(大于)、 =(大于或等于)、(不等于)和 =(等于) ,用来反映

21、两个数值或字符串表达式之间的关系。关系成立,返回True(真);关系不成立,返回False(假);两个表达式中若有Null,则返回Null。,连接运算符,& 、+ 运算符都能用于进行两个字符串的连接,但 & 运算符强制两个表达式按字符串连接,尽管被连接的表达式不是字符串也是如此。 而 + 运算符则较复杂,当两个表达式都是字符串时按字符串连接,否则视具体情况会有不同结果。 在进行字符串连接时一般使用 & 运算符。,逻辑运算符,逻辑运算符包括:Not(非)、And(与)、Or(或)、Xor(异或)、Equ(逻辑等于)和Imp(逻辑蕴涵),用于表达两个逻辑表达式之间的关系。 在进行逻辑运算时,只要参

22、入运算的表达式中有一个为 Null,则将返回 Null。,运算符优先顺序,在表达式中,当运算符不止一种时,要先处理算术运算符,接着处理比较运算符,然后再处理逻辑运算符。 算术运算符优先级由高至低是:指数运算 ()、负数 ()、乘法和除法 (*、 /)、整数除法 ()、求模运算 (Mod)、加法和减法 (+、 )、字符串连接 (&)。 逻辑运算符优先级由高至低是:Not、And、Or、Xor、Eqv、Imp 。 所有比较运算符的优先顺序都相同 。,自定义数据类型,在模块的声明部分可以使用Type语句建立自定义数据类型。 语法格式: Private|Public Type自定义类型名 元素 As

23、类型 End Type,动态数组(1),创建动态数组的步骤: 第一步是声明动态数组,其和声明固定大小的数组类似,但给数组附以一个空维数表,例如: Dim DynArray () 第二步是用ReDim 语句在程序执行过程中给数组指定维数和分配实际的元素个数,例如: ReDim DynArray (4 to 12),动态数组(2),值得注意的是:ReDim 语句与 Dim 语句、Static 语句不同,ReDim 语句是一个可执行语句,通过在应用程序中执行ReDim 语句,给维数和元素个数待定的数组指定维数和元素个数。 在程序中还可以使用变量设置动态数组的边界。 例如: ReDim DynArra

24、y (X, Y),第3章 程序结构,程序流程控制,模块概念,过程与函数,常用内置函数,程序出错处理,过程参数传递方法,程序流程控制,程序的基本运行方式是自顶向下地顺序执行各条语句,被称做顺序结构。对于简单的问题,依靠顺序结构就可以完成任务;但对于稍微复杂一点的问题,单纯依靠顺序结构也许就不够了,而必须在程序中加入更多的程序流程控制。 程序流程的控制是通过一定的控制结构来实现的,包括:分支结构、循环结构,并可以进行控制结构嵌套。 另外,也可以使用Goto语句来控制程序流程。,分支结构,分支结构的作用是使程序依照条件而走不同的支路。Visual Basic 支持的分支结构有: If.Then If

25、.Then.Else Select Case 程序往往根据需要而选择合适的分支结构。,If.Then 语句,用 If.Then 结构可以有条件地执行其结构内的一条或多条语句。 If 条件表达式 Then 一条语句 或: If 条件表达式 Then 多条语句 End If,可以使用 If.Then.Else语句建立多个分支流程,并根据条件选择其中一个分支。语法结构: If 条件1 Then 语句块1 ElseIf 条件2 Then 语句块2 . Else 语句块n End If,If.Then.Else 语句,Select Case 语句,Select Case 是用于实现多重选择,其作用与 I

26、f.Then.Else 语句类似,但主要用于只有一个条件,并且条件值为离散值的分支选择。 语法结构是: Select Case 测试条件 Case 表达式1 语句块1 Case表达式2 语句块2 Case Else 语句块n End Select,循环结构,循环的作用是允许某个程序段被重复执行。Visual Basic 支持的循环结构有: Do.Loop For.Next For Each.Next 程序往往根据需要而选择合适的循环结构。,Do.Loop 循环,Do.Loop 语句是通过计算条件值以决定是否继续执行,而产生循环效果。 Do.Loop 语句有几种演变形式。 形式一: Do Whi

27、le 条件表达式 语句块 Loop 形式二: Do Until 条件表达式 语句块 Loop,Do.Loop 循环,形式三: Do 语句块 Loop While 条件表达式 形式四: Do 语句块 Loop Until 条件表达式,For.Next 循环,在知道要执行多少次时,则可以使用 For.Next 循环。与 Do 循环不同, For 循环使用一个叫做计数器的变量,每重复一次循环之后,计数器变量的值就会增加或者减少。For 循环的语法如下: For 计数器 = 初始值 To 终止值 Step 增量 语句块 Next 计数器 其中,参数:计数器、初始值、终止值和增量都必须是数值型的变量。,

28、For Each.Next循环,For Each.Next 循环与 For.Next 循环类似,但它是以对象集合中的每一个元素作为重复依据的,而不是按次数重复。如果不知道一个集合有多少元素, For Each.Next 循环非常有用。 语法格式: For Each 元素 In 集合 语句块 Next 元素,控制结构嵌套,控制结构嵌套就是把一个控制结构放入到另一个控制结构之内,例如:在 For.Next 循环块中放入 If.Then. 块。 在 Visual Basic 中,控制结构的嵌套层数没有限制。,Goto语句,GoTo是无条件转向语句,能够无条件地转移到过程内指定的行。 语法格式是:Go

29、To line 其中,参数line为行标签或行号。 由于GoTo语句是非结构化流程控制的遗留物,容易破坏程序结构,因此要求尽量少用。,模块概念,模块概念诞生于结构化程序设计方法。 结构化设计的基本思路是通过将复杂问题按照功能成分进行有效地分解,使大问题转化为小问题,由此使得问题简化、便于解决。 模块即是被分解出来的并具有一定功能特征的程序块或代码集。 实际应用中,根据对程序问题的分解程度,模块可大可小,它可以被理解为所建程序系统中的一个子程序系统,也可以是子程序系统内一个涉及多项任务的功能块,或者是功能程序块内的一个函数、过程。,模块概念,Visual Basic程序结构是以模块为单位构造的,

30、其基本模块以文件形式保存,例如,标准模块、窗体模块。 标准模块、窗体模块中包含有:过程、函数等内容,可以把过程、函数看作为单元级模块,它们是VB最小的模块单位。 标准模块文件的扩展名是 .BAS,它是一个包含许多过程、函数等单元模块的仓库。 窗体模块的文件扩展名是 .FRM,它被用来构造前端用户界面的,通过在窗体上放置控件,可以获得界面的可视化设计。 当通过Visual Basic创建应用程序时,首先需要建立标准模块、窗体模块等文件级模块,然后在其内接着建立过程、函数等单元级模块。,过程与函数,在 Visual Basic 中,过程是构建程序逻辑部件的最小单元成分。使用过程编程至少有两大好处。

31、 其一:可以将程序划分成更小的逻辑单元,这有利于简化程序。 其二:过程可以供多处调用,这有利于代码重用。 。 在 Visual Basic 中使用的过程有: Sub 过程不返回值;称做通用过程或子过程。 Function 过程返回值;称做函数过程。 另外,窗体、控件等,还可以提供事件过程。,通用过程,通用过程由用户根据需要自主建立,其作用是可以把需要完成一定功能的代码放在过程,供诸多功能操作调用,由此提高代码利用率,并使其更便于维护。 定义通用过程的语法是: Private|PublicStatic Sub 过程名 (形式参数列表) 语句块 End Sub,过程参数,过程的参数类似于变量声明,

32、它表明在调用过程时,需要传递进来的数据的个数及其类型。例如: Private Sub Abut(X As String, Y As Integer,Z) 语句块 End Sub,调用过程,调用过程的语法: Call 过程名(实际参数列表) 或: 过程名 实际参数列表 其中,实际参数列表,是需要往被调用过程传递的具体数据;因此,其数据类型需要和被调用过程的形式参数保持一致。实际参数可以是常量、变量、数组,或复杂表达式,但无论是什么都必须有确定的值。,函数过程,通过Function 语句创建的函数过程可以返回一个值到调用过程处。 函数过程的语法是: Function 函数名 (形式参数列表) As

33、 类型 语句块 End Function 函数过程需要返回的值的类型由As 子句设置。,函数过程中返回值,在函数过程内,可以通过以下语句将值返回。 函数名 = 表达式 例如: Function Hypotenuse (A As Integer, B As Integer) As String Hypotenuse = Sqr (A 2 + B 2) End Function,调用函数过程,把函数看作一个数,可以放在赋值号右端。 例如: Tx1=MyFunc(5) 用做参数。 例如: Tx2=MyFunc(MyFunc(5),事件过程,窗体、控件的某个事件的发生时,会自动调用它的该事件过程。因此

34、,事件过程往往是由用户事件触发。 控件的事件过程名,由控件的实际名字、下划线和事件名组合而成。 例如,一个名为 cmdPlay 的命令按钮被单击时所调用的事件过程是: cmdPlay_Click。 窗体也有事件,但其事件过程命名规则却和一般控件有所不同。窗体事件名是:词汇 “Form”、下划线和事件名的组合。例如,窗体单击时所调用的事件过程是: Form_Click 。,通用、函数过程和事件过程的关系,过程参数传递方法,1. 按值传递参数 按值传递参数时,所传递的是实际参数的值。这时实际参数所在内存地址处所存储的数值传给了被调用过程的形式参数;这时,实参、形参分别有不同的内存地址。如果在被调用

35、过程中改变了这个参数值,则所作变动只会到形参,不会影响实参。 通过关键字ByVal可以声明按值传递的参数。,过程参数传递方法,2. 按地址传递参数 按地址传递参数时,所传递的是实际参数的地址。这时的实参与形参具有相同的内存地址。因此,当按地址传递参数时,对形式参数所做的改变,也将随之反映到实际参数上来。 按地址传递参数在 Visual Basic 中是缺省的,并可以通过关键字ByRef明确声明参数是按地址传递。,常用内置函数,除了建立函数过程外,Visual Basic还提供了丰富的内置函数可用于程序设计,包括:数学函数 、字符串函数 、判断函数、转换函数等方面的函数。,数学函数,数学函数主要

36、用来完成数学运算,常用的有 : 1. Sin(x)返回X的正弦值,X的单位为弧度。 2. Cos(x)返回X的余弦值,X的单位为弧度。 3. Tan(x)返回X的正切值,X的单位为弧度。 4. Atan(x)返回X的反正切值,返回值单位为弧度。 5. Log(x)返回X的自然对数。 6. Exp(x)返回以e为底的X的指数值。,数学函数,7. Sqr(x)返回参数X的平方根值。 8. Abs(x)返回X的绝对值。 9. Hex(x)以字符串形式返回X的十六进制值。 10. Oct(x)以字符串形式返回X的八进制值。 11. Rnd(x)产生一个介于01之间的单精度随机数。 12. Int(x)

37、去掉小数部分,返回整数。 13. Fix(x)去掉小数部分,返回整数。,字符串函数,常用的字符串函数有: 1. InStr(起始位置,字符串1,字符串2,比较类型) 字符串2在字符串1中第一次出现的位置。 2. InStrRev(字符串1, 字符串2起始位置,比较类型 与InStr()函数相似,只是从字符串1的后面开始向前查找。 3. LTrim(字符串) 去掉字符串左边的空白部分。 4. Rtrim(字符串) 去掉字符串右边的空白部分。 5. Trim(字符串) 去掉字符串的左右空格 。 6. Left(字符串,个数) 取出字符串左边指定个数的字符 。,字符串函数,7. Right(字符串,

38、个数) 取出字符串右边指定个数的字符。 8. Mid(字符串,起始位置,个数) 取字符串由起始位置开始的指定个数的字符。 9. Len(字符串或字符变量) 计算字符长度 。 10. Ucase(字符串) 将字符串的小写字母转换为大写字母。 11. Lcase(字符串) 将字符串的大写字母转换为小写字母。 12. Space(个数) 返回指定个数的空字符串。 13. String(个数,字符)返回包含重复字符的字符串 。,判断函数,1. IsArray(变量名)判断变量是否为数组。 2. IsDate(表达式)判断表达式是否为日期。 3. IsEmpty(变量)判断变量是否已被初始化。 4. I

39、sNumeric(表达式)判断表达式是否为数字型。 5. Iff(表达式,真部分,假部分)计算真假两部分的值,再计算表达式的值。若表达式为True,返回真部分的值;否则, 返回假部分的值。,转换函数,转换函数用来实现不同类型数据之间的转换。 1. Str(数值表达式)把数值转换为字符串。 2. Val(字符串)把字符串转换为数字数值,忽略字符串中的非数字字符。,编程方法,Visual Basic 具有结构化和面向对象两种编程特征。,结构化编程,结构化编程是程序设计走向成熟的一个标志。非结构化的高级语言程序是把问题作为一个单一过程来处理的。但是,随着问题越来越复杂,程序规模逐步加大,以至求解问题

40、的单一过程程序复杂度超出人所能够驾束的范围。结构化的基本思路是将问题进行有效分解,使大问题转化为小问题,而使问题简化、便于解决。 模块是结构化设计中的一个基本概念。所谓模块既是具有一定的功能特性程序段落。而模块又表现出多层次特性。 在Visual Basic中,标准程序文件、窗体文件是上层模块,而其内的过程、函数则是具有更细节功能特性的下层模块。因此,以完成某项功能为目标创建程序文件、窗体文件,并在其内建立过程、函数,也就成为了在Visual Basic环境下,按照结构化进行程序设计的基本方法。,出错处理语句,1、On Error语句 格式1:On Error GoTo 行标号 格式2:On

41、Error Resume Next 2、Resume语句 Resume 结束错误处理并重新执行产生错误的语句。 Resume Next 结束错误处理并重新执行产生错误的语句的下一条语句。 Resume 行标号 结束错误处理并在行标号指定的位置处恢复执行。,第4章 用户界面设计,窗体容器,控件元素,事件驱动,控件数组,设计菜单,创建工具栏,使用对话框,窗体,窗体是 Visual Basic 应用程序的基本构造模块,是运行应用程序时,用户进行交互操作的窗口或对话框。其固有成分是:图标、标题栏、控制菜单、控制按钮和工作区(容器)。,窗体属性(1),窗体的个性是通过其属性体现的,其可以在设计时通过“属

42、性”窗口设置,也可以在运行时由代码来实现。窗体的常用属性是: 1. Name 窗体的名称 。 2. Appearance 3D 效果 。 3. BorderStyle设置窗体边框样式。 4. Caption 窗体标题 。 5. ControlBox 设置窗体“控制菜单”。 6. Enabled 对用户事件是否能作出反应 。,窗体属性(2),7. Height(高)、Width(宽)窗体大小 。 8. Left(左)、Top(顶)窗体位置。 9. HelpContextID 帮助文件的上下文关联编号 。 10. Icon 设置窗体图标。 11. MDIChild 设置窗体是否被作为 MDI 子窗

43、体 。 12. Moveable 设置是否能移动一个窗体。 13. StartupPosition 设置窗体启动位置 。 14. Visible 设置窗体是被显示还是被隐藏 。,窗体事件,事件的作用在于能够对用户的行为作出响应。窗体的常用事件有: 1. Load事件 发生在窗体被装载时。 2. Activate 事件 当一个窗体变成活动窗体时 。 3. Deactivate 事件 当改变当前窗体时 。 4. Unload事件 当卸载窗体时 。 5. Resize 事件 当调整窗体的大小时。,窗体的方法,窗体的方法也就是窗体所具有的行动方式。窗体上常用的方法有: 1. Show方法 用以显示窗体

44、。 2. Hide方法 用于隐藏窗体,但不能使其卸载。 3. Move方法 用以移动窗体到一定的坐标位置。 4. Refresh方法 强制全部重绘窗体及上面的控件。,控件,控件是建立Visual Basic应用程序的基本元素。应该讲,可视化设计就是通过控件实现的。 能够用于Visual Basic的控件数量众多,一般将其分为两个方面:内部固有控件、ActiveX 控件。用户可以通过“工具箱”获取各种控件。,内部控件,内部控件是包含在Visual Basic系统内,可以直接使用的控件;因此具有相对较好的运行性能。 常用的内部控件有:命令按钮 、文本框、标签、框架 、列表框、组合框、复选框 、选项

45、按钮 、图片框 、定时器、数据控件 等。,CommandButton(命令按钮),当用户需要交互式地控制应用程序的时候,最简便的方法就是给用户提供一个“命令按钮”。 命令按钮的作用是:在用户单击它时,将会激发它的Click 事件。因此,将代码写入 命令按钮的Click 事件过程,通过用户单击就可以执行相关操作。 命令按钮的常用属性有: Cancel属性 用于设置按钮为取消按钮。 Caption属性 用于设置在命令按钮上显示的文本。 Style属性 设置命令按钮的外观。,TextBox (文本框),TextBox(文本框)控件一般是用来接收或显示输入输出信息,可用于编辑文本。 经常使用的文本框属

46、性有: Text属性 用于设置显示的文本内容。 MaxLength属性 用于设置文本框中输入字符串的长度限制。 MultiLine属性 用于设置文本框是否以多行方式显示文本。 PasswordChar属性 用于设置是否显示用户键入的字符。 ScrollBars属性 用于设置文本框是否有垂直或水平滚动条。,Label(标签),Label (标签)控件是专门用来显示文本的,因此用户不能对标签内的文本进行编辑。 一般被用作标题名。通常用标签来标注本身不具有 Caption 属性的控件。例如,可用 Label 控件为文本框、列表框、组合框等控件添加描述性的标签。 标签常用的属性有: Caption 属

47、性 缺省属性,设置标签中显示的文本内容。 AutoSize属性 设置控件是否能自动调整以显示所有的内容。 WordWrap属性 该属性设置控件是否扩大以显示标题文字。,Frame(框架),Frame(框架)控件是一个容器。框架的作用是能够把其他的控件组织在一起形成控件组。这样,当框架移动、隐藏时,其内的控件组也相应移动、隐藏。 框架的常用属性有: Caption属性 设置框架标题,使用户了解框架的用途。 Enabled属性 设置框架是否有效。 Visible属性 设置框架是否可见。,ListBox(列表框)(1),ListBox(列表框)控件用于显示项目列表。用户可以从列表框中的一系列选项中选

48、择一个或多个选项。 List属性 设置列表框中包含的项。 Columns属性 设置是水平滚动还是垂直滚动。 MultiSelect属性设置是否能够做多个选择。 ListIndex属性 当前所选择元素的下标。 ListCount属性 列表中全部元素的个数。 Sorted 属性 设置按字母顺序排列项目。,ListBox(列表框)(2),列表框经常用到的操作有: 1. 添加项目:列表框.AddItem item, index 例如:List1.AddItem “王平” 2. 删除项目:列表框.RemoveItem index 例如:List1. RemoveItem 0 3. 获得列表项目内容 :列

49、表框.List(index) 例如:Text1.Text = List1.List(2) 4. 用 ListIndex 属性判断项目位置 。 5. 用 ListCount 属性返回项目数 。,ComboBox(组合框),ComboBox(组合框)控件将文本框和列表框的功能结合在一起。有了这个控件,用户可通过在组合框中输入文本来选定项目,也可从列表中选定项目。 在使用方式上,组合框具有和列表框相似的特征。 组合框的特点是可由Style属性设置三种组合样式。,CheckBox(复选框),CheckBox(复选框)控件通常用于提供 Yes/No 或 True/False 的逻辑选择。 复选框通过 V

50、alue 属性指示其所处的状态。 无论何时,当用户单击复选框时都将触发其Click 事件。,OptionButton(选项按钮),选项按钮被用来做从多个可选项中选择一项的操作。 选项按钮和复选框控件看起来相似。因此,可以把复选框中的操作方法用到选项按钮上来。它们之间的区别是:选项按钮一般用于单项选择,而复选框则可以用于多项选择。,PictureBox(图片框),图片框是用来显示图形的,但同时它又可以作为其它控件的容器。在做容器使用时,图片框和Frame 控件类似。 图片框经常用到的属性是: Picture属性 用于设置要加载的图片。 AutoSize属性 设置图片框是否按图片大小自动调整。,T

51、imer(定时器),定时器是一个响应时间的控件。它们独立于用户,编程后可用来在一定的时间间隔中周期性地执行某项操作。 定时器有两个关键属性: Enabled属性 当该属性为True时,定时器处于工作状态。而当 Enabled 被设置为 False 时,它就会暂停操作而处于待命状态。因此,定时器的 Enabled 属性并不同于其它对象的 Enabled 属性。 Interval属性 定时器周期性事件之间的时间间隔(毫秒数)。,Data(数据)控件,Data控件用于在程序中进行数据库连接,并可以把数据库中的信息通过窗体上的数据识别控件显示、编辑和更新。 Data控件是依靠属性来获取对数据的连接的,

52、在进行连接时其关键属性有: Connect属性 设置有待连接的数据库类型。 DatabaseName属性 设置连接的数据库文件或目录名称。 RecordSource属性 设置需要访问的数据库表的名称。,ActiveX 控件,ActiveX 控件是外部控件,因此其存在形式不同于和Visual Basic融合在一起的内部控件。它们是以扩展名为 .ocx 的文件形式存在于Visual Basic系统之外,只在需要时才将其添加到工具箱中。 ActiveX 控件是对 Visual Basic 内部控件集合的扩充。例如:ADO Data控件,它是Data控件的功能扩充,可使Visual Basic具有更强

53、的数据访问能力。应该讲,Visual Basic的诸多强大功能正是依靠ActiveX 控件获得的。 经常使用的ActiveX 控件有:ADO Data 、数据组合 、数据列表 、DataGrid 、公共对话框 、 RichTextBox 等。,ADO Data,在使用ADO Data 控件之前需要在“部件”对话框中,选择“Microsoft ADO Data Control”选项,将其引入到工具箱。 如同Data 控件,ADO Data 控件也是通过属性实现了对数据源的连接。其用于连接的关键属性是: ConnectionString属性 设置数据源连接方式。 RecordSource属性 设置

54、记录源类型、组成。,DataCombo 、 Data List 控件,为了使用DataCombo 和 Data List 控件,需要在“部件”对话框中,选择“Microsoft DataList Controls”选项。 DataCombo 和 DataList 控件与标准列表框、组合框控件极为相似,其不同在于DataCombo 、 DataList 控件具有更强的数据绑定能力。 DataCombo 、DataList 控件能实现两方面的数据绑定。其一方面,可以通过DataSource、DataField属性绑定到其将产生影响的目标数据的某个字段;另一方面,还可以通过RowSource、Lis

55、tField属性绑定到其列表所需数据的某个字段。,DataGrid,要用DataGrid 控件,需要在“部件”对话框中,选择“Microsoft DataGrid Control”到工具箱。 DataGrid 控件是一种类似于电子数据表的绑定控件,可以显示一系列行和列来表示记录集合的记录和字段。 DataGrid 控件数据访问功能极强,但使用却非常简单。在设计时只需要设置了它的 DataSource 属性,则其就会用数据源的记录集来自动填充该表格,和自动设置该控件的列标头。,CommonDialog(公共对话框),要使用公共对话框,需要在“部件”对话框中,选择“Microsoft Common

56、Dialog Control”到工具箱。 公共对话框控件提供一组标准的操作对话框,进行诸如打开和保存文件,设置打印选项,以及选择颜色和字体等操作。,RichTextBox,要使用RichTextBox 控件,需要在“部件”对话框中,选择“Microsoft RichTextBox Control”到工具箱中。 RichTextBox 控件和标准文本框类似,标准 TextBox 控件用到的所有属性、事件和方法,RichTextBox 控件几乎都能支持,例如 MaxLength、 MultiLine、 ScrollBars、 SelLength、 SelStart 和 SelText。 RichTextBox 控件能以 rtf 格式和普通 ASCII 文本格式这两种形式打开和保存文件。可以使用控件的方法(LoadFile 和 SaveFile)打开和保存文件。,控件数组,控件数组是一组具有共同名称和类型的控件集合,其内每个控件称做控件元素,各元素之间通过用于索引的Index属性相互区别,其最大索引值为 32767。 通过控件数组还可以使若干个相同类型的控件共享代码。 控件数组名称为Command1的命令按钮组的Click事件,其事件过程格式是: Private Sub Comma

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论