1、大学计算机基础教程TaiYuan University of TechnologyVBVB编程入门编程入门Visual Basic 程序设计教程程序设计教程本章将介绍有关本章将介绍有关VBVB程序的构成和数据类型以程序的构成和数据类型以及变量的定义和使用、表达式以及基本的输入输及变量的定义和使用、表达式以及基本的输入输出操作。这些知识是编程的基础。我们将通过简出操作。这些知识是编程的基础。我们将通过简单示例的分析,帮助理解如何进行单示例的分析,帮助理解如何进行VBVB编程。编程。2Visual Basic程序设计教程本章主要内容本章主要内容:确定数据的性质:数据类型确定数据的性质:数据类型两种
2、数据表达:常量和变量两种数据表达:常量和变量算术运算符和表达式算术运算符和表达式VBVB编程的开始:使用窗体编程的开始:使用窗体赋值和输入输出赋值和输入输出3Visual Basic程序设计教程 2.1 概概 述述4Visual Basic程序设计教程1加法器界面设计加法器界面设计2.2 一个简单的加法器程序一个简单的加法器程序5Visual Basic程序设计教程对象列表框对象列表框过程列表框过程列表框过程分界过程分界线程序员在此编写代码程序员在此编写代码光标光标标题标题6Visual Basic程序设计教程Private Sub CmdAdd_Click()计算计算”按钮代码按钮代码 Di
3、m Temp As Long TxtNum1.Text=TxtNum2.Text=TxtSum.Text=TxtNum1.Text=InputBox(请输入第一个数请输入第一个数)TxtNum2.Text=InputBox(请输入第二个数请输入第二个数)Temp=Val(TxtNum1)+Val(TxtNum2)TxtSum.Text=TempEnd SubPrivate Sub CmdExit_Click()“退出退出”按钮代码按钮代码 FrmAdder1.Hide MsgBox(加法器程序运行结束,谢谢使用加法器程序运行结束,谢谢使用)EndEnd Sub7Visual Basic程序设计
4、教程 数据是程序处理的对象。为了更好地处理各数据是程序处理的对象。为了更好地处理各种各样的数据,种各样的数据,VBVB定义了多种数据类型,数据定义了多种数据类型,数据类型定义了值的范围并确定了它能够进行的操类型定义了值的范围并确定了它能够进行的操作。作。8Visual Basic程序设计教程整数:整型/长整型字节型浮点型:单/双精度货币型数值型 数据类型字符型逻辑型日期型对象型变体型9Visual Basic程序设计教程 1.1.字节型字节型(Byte)(Byte)字节型数可以表示无符号的整数,字节型数可以表示无符号的整数,0 0255255 2.2.整型整型(Integer)(Integer
5、)和长整型和长整型(Long)(Long)不带小数部分的数,表示正整数、负整数和零不带小数部分的数,表示正整数、负整数和零 整型数整型数:-32768 -3276832767 9832767 98、9898 长整型数:长整型数:-2147483648-21474836482147483647 456782147483647 45678、45678&45678&10Visual Basic程序设计教程 3.3.单精度型单精度型(Single)(Single)和双精度型和双精度型(Double)(Double)浮点数。表示带有小数部分的数浮点数。表示带有小数部分的数 表示数的范围大,但有误差。表示
6、数的范围大,但有误差。如超出某个表示范围,则用科学记数法如超出某个表示范围,则用科学记数法 例如:例如:4.53E8(4.534.53E8(4.53108)108),8.173E-148.173E-14,3.14D233.14D23 SingleSingle保留保留7 7位十进制有效位,位十进制有效位,DoubleDouble保留保留1515位位 4.4.货币型货币型(Currency)(Currency)专门为处理货币而设计的数据类型专门为处理货币而设计的数据类型 它可最多保留小数点右边它可最多保留小数点右边4 4位和小数点左边位和小数点左边1515位位11Visual Basic程序设计教
7、程字符型字符型(String)(String)用双引号括起来的一串字符。用双引号括起来的一串字符。例如例如Canton”Canton”、”1+2=?”1+2=?”、”Good Morning”Good Morning”等等 “”“”称为起止界限符。称为起止界限符。字符串长度。分变长字符串字符串长度。分变长字符串(长度不固定长度不固定)和定和定长字符串长字符串(长度固定长度固定)在在VBVB中,把汉字作为一个字符来处理。中,把汉字作为一个字符来处理。例如:例如:“浙江大学浙江大学 浙江杭州浙江杭州 中国中国”该字符串长度为该字符串长度为1212,含空格,含空格 12Visual Basic程序设
8、计教程逻辑型逻辑型(Boolean)(Boolean)逻辑型又称布尔型,其数据只有逻辑型又称布尔型,其数据只有True(True(真真)和和False(False(假假)两个值两个值逻辑值和数值类型进行转换的时逻辑值和数值类型进行转换的时候,它们是非对称的:候,它们是非对称的:(1 1)数值数据转换为布尔值时,)数值数据转换为布尔值时,0 0对应对应FalseFalse,非,非0 0对应为对应为TrueTrue(2 2)布尔值转换为数值数据时,)布尔值转换为数值数据时,FalseFalse对应对应0 0,TrueTrue对应为对应为 -1-1。13Visual Basic程序设计教程 日期型日
9、期型(Date)(Date)表示日期和时间表示日期和时间 用两个用两个“#”#”符号把日期和时间的值括起来符号把日期和时间的值括起来 如:如:#08/20/2019#08/20/2019#、#2019-08-20#2019-08-20#12/12/2019 11:35:35 PM#12/12/2019 11:35:35 PM#14Visual Basic程序设计教程变体型变体型(Variant)变体型数据是一种可变的数据类型,可以变体型数据是一种可变的数据类型,可以存放任何类型的数据存放任何类型的数据 当指定变量为当指定变量为Variant变量时,变量时,VB会自动完会自动完成必要的转换成必要
10、的转换15Visual Basic程序设计教程在程序中不特别说明时,在程序中不特别说明时,VB会自动将该变量默认会自动将该变量默认为为Variant型变量。型变量。例:例:Temp=“22”字符串字符串 Temp=22 数值数值 Temp=#01/01/2019#日期日期对象对象引用型型引用型型(Object)对象引用型型数据可用来表示应用程序中的对象引用型型数据可用来表示应用程序中的对象对象16Visual Basic程序设计教程 VBVB为用户了提供自定义数据类型,以满足用户为用户了提供自定义数据类型,以满足用户的需求。实际上自定义数据只是把的需求。实际上自定义数据只是把VBVB已有的数据
11、类已有的数据类型重新组合或者构造为一个新类型。例如我们要给型重新组合或者构造为一个新类型。例如我们要给员工设计一个工资数据类型,员工设计一个工资数据类型,这个类型中有姓名、工号和工资数,可以使用这个类型中有姓名、工号和工资数,可以使用以下方法定义:以下方法定义:Type PayType Pay 姓名姓名 As StringAs String*8 8 工号工号 AsAsLongLong 工资工资 AsAsSingleSingle End Type End Type17Visual Basic程序设计教程类类 型型名名 称称字节数字节数取值范围和有效位数取值范围和有效位数整整 型型Integer2
12、精确表示精确表示-3276832767范围内的整数范围内的整数长整型长整型Long4精确表示精确表示-21474836482147483647范围内的整数范围内的整数单精度浮点单精度浮点型型Single4-3.4028231038-1.40129810-45 1.40129810-453.4028231038 6位有效位数位有效位数双精度浮点双精度浮点型型Double8-1.7976931348623210308 -4.9406564584124710-3244.9406564584124710-324 1.797693134862321030815位有效位数位有效位数字节型字节型Byte10
13、255变长字符串变长字符串String每个字符占每个字符占1个字节,每个字符串最多可存放约个字节,每个字符串最多可存放约20亿个字符亿个字符定长字符串定长字符串String*sizesize是小于是小于65535的无符号整常数,为字符串长度的无符号整常数,为字符串长度逻辑型逻辑型Boolean2True或或FalseVisual Basic 6.0的常用数据类型2.32.3确定数据的性质:数据类型确定数据的性质:数据类型18Visual Basic程序设计教程类类 型型名名 称称字节数字节数取值范围和有效位数取值范围和有效位数货币型货币型Currency8-922337203685477.58
14、08922337203685477.5807日期型日期型Date8100.1.19999.12.31对象型对象型Object4任何对象的引用任何对象的引用变体型变体型Variant若存放数值类型数据,占若存放数值类型数据,占16个字节,最大可达个字节,最大可达Double的范围;的范围;若存放字符串类型数据,字符串长度与变长字符串相同若存放字符串类型数据,字符串长度与变长字符串相同Visual Basic 6.0的其他数据类型19Visual Basic程序设计教程 说明:说明:(1)不同类型的数据,所占的存储空间不一样。不同类型的数据,所占的存储空间不一样。(2)数据的类型可在数据之后加上一
15、个类型符来数据的类型可在数据之后加上一个类型符来表示,例如,表示,例如,413&,86!,104.67#等。等。20Visual Basic程序设计教程 2.4.1 常量常量 在程序运行期间其值始终保持不变的量在程序运行期间其值始终保持不变的量 两种形式的常量:文字常量和符号常量两种形式的常量:文字常量和符号常量 文字常量又分为数值常量、字符串、逻辑值和日文字常量又分为数值常量、字符串、逻辑值和日期等期等 1 1数值常量数值常量 例如例如2 2,35.56735.567,它们直接出现在程序中。,它们直接出现在程序中。21Visual Basic程序设计教程 2 2字符串常量字符串常量 它是用双
16、引号括起来的各种有效字符串组成它是用双引号括起来的各种有效字符串组成的,如的,如“123“123“,“AbcDAbcD“,“程序设计程序设计“等。等。字符串可以为空。字符串可以为空。字符串常量的长度为两个引号之间所有的字字符串常量的长度为两个引号之间所有的字符数,包括空格。符数,包括空格。VBVB规定定长字符串最大长度为规定定长字符串最大长度为3276732767。22Visual Basic程序设计教程 3 3逻辑常量逻辑常量 就是逻辑值,就是逻辑值,TrueTrue和和FalseFalse。4 4日期常量日期常量 表示日期和时间的常量,表示日期和时间的常量,例如:例如:#12-12-201
17、9#12-12-2019#23Visual Basic程序设计教程2.4.2 符号常量符号常量 符号常量是在程序中用符号表示的常量。符号符号常量是在程序中用符号表示的常量。符号常量定义一个符号(字符串)代表一个文字常量常量定义一个符号(字符串)代表一个文字常量 格式:格式:PublicPublicPrivate ConstPrivate Const常量名常量名 As As 数据类数据类型型=表达式表达式 例如:例如:Const PI=3.14159 As SingleConst PI=3.14159 As Single 使用符号常量主要是为提高程序的可读性。另使用符号常量主要是为提高程序的可读
18、性。另外,如果需要进行常数的调整,只需要在定义的地外,如果需要进行常数的调整,只需要在定义的地方一次性修改就可以了。方一次性修改就可以了。24Visual Basic程序设计教程2.4.3 变量和声明变量变量和声明变量1 1变量是什么变量是什么 变量是在程序运行期间其值可以发生变化的量。变量是在程序运行期间其值可以发生变化的量。在程序运行时,数据是存放在内存中的。因此变量在程序运行时,数据是存放在内存中的。因此变量就是指示程序将到哪个内存单元去存取数据,即变量就是指示程序将到哪个内存单元去存取数据,即变量与内存单元有关。使用变量名标识不同的变量,同时与内存单元有关。使用变量名标识不同的变量,同
19、时要给出变量数据的类型。因此,要给出变量数据的类型。因此,VBVB变量由数据类型和变量由数据类型和变量名组成。变量名组成。程序中选择使用常量还是变量,是根据它们是否需程序中选择使用常量还是变量,是根据它们是否需要变化而决定的。要变化而决定的。25Visual Basic程序设计教程2 2VBVB变量的特点变量的特点 (1 1)可变性。向变量存数据,会改变变量原来)可变性。向变量存数据,会改变变量原来的值。的值。(2 2)从变量中取数据,变量中原来的值不会改)从变量中取数据,变量中原来的值不会改变,因此在程序中,一个变量的值可以被反复取变,因此在程序中,一个变量的值可以被反复取用而不会导致数据的
20、改变,用而不会导致数据的改变,“取之不尽取之不尽”。这是。这是变量的可复制性。变量的可复制性。(3 3)变量的取值和它的类型有关,但变量的取值和它的类型有关,但VBVB能够能够进行自动转换。进行自动转换。26Visual Basic程序设计教程3 3给给VBVB变量命名变量命名 应遵守一些规则:应遵守一些规则:(1)(1)变量名必须以字母开头;变量名必须以字母开头;(2)(2)只能由字母、数字和下划线组成。不能含只能由字母、数字和下划线组成。不能含有小数点、空格等字符;有小数点、空格等字符;(3)(3)字符个数不得超过字符个数不得超过255255个;个;27Visual Basic程序设计教程
21、 (4)(4)不能使用不能使用VBVB的关键字的关键字(如语句名、函数名如语句名、函数名等等)。例如,。例如,PrintPrint、SubSub、EndEnd等等 (5)(5)变量名在一个程序区域内不能同名。变量名在一个程序区域内不能同名。(6)(6)不区分变量名中字母的大小写,一般情不区分变量名中字母的大小写,一般情况下变量的第一个字母以大写表示。变量取名应况下变量的第一个字母以大写表示。变量取名应使用能够望名知义的单词或者缩写等,提高程序使用能够望名知义的单词或者缩写等,提高程序的可读性。的可读性。28Visual Basic程序设计教程4.4.变量的声明变量的声明 变量的声明就是向程序说
22、明要使用的变量。变量的声明就是向程序说明要使用的变量。有以下有以下2 2种方法种方法(显式声明与隐式声明显式声明与隐式声明)(1)(1)声明变量声明变量(显式声明显式声明)用用DimDim、PublicPublic、PrivatePrivate或或StaticStatic语句来声明变语句来声明变量量 例如:例如:Dim sum As Integer Dim sum As Integer 把把sumsum定义为整型定义为整型变量变量 29Visual Basic程序设计教程 (2)(2)隐式声明隐式声明 不加说明就直接使用变量,此时默认的变量类型不加说明就直接使用变量,此时默认的变量类型为变体类
23、型为变体类型(Variant)(Variant)也允许使用类型符来声明变量的类型,如也允许使用类型符来声明变量的类型,如Num%Num%,Sum!Sum!(3)(3)定义多个变量定义多个变量30Visual Basic程序设计教程2.4.4 强制要求必须声明变量强制要求必须声明变量:Option ExplicitOption Explicit Option ExplicitOption Explicit 一般情况下,该语句放置在程序模块的外部开一般情况下,该语句放置在程序模块的外部开始部分,强制要求所有变量必须显式声明后才能使始部分,强制要求所有变量必须显式声明后才能使用。用。Option E
24、xplicitOption Explicit Private Sub CmdAdd_Click()Private Sub CmdAdd_Click()End SubEnd Sub31Visual Basic程序设计教程2.4.5 VBVB的关键字的关键字 VB VB有许多关键字,也叫做保留字,它们为有许多关键字,也叫做保留字,它们为VBVB系统本身所用,具有特定的含义。这些已经被系统本身所用,具有特定的含义。这些已经被VBVB使用了的单词或者缩写就是使用了的单词或者缩写就是“关键字关键字”。关键字。关键字不能被使用作为用户定义的变量名,也不能被编不能被使用作为用户定义的变量名,也不能被编程者重
25、新定义使用。程者重新定义使用。如我们已知的:如我们已知的:AsAs,DimDim,PrivatePrivate,SubSub,EndEnd,IntegerInteger,LongLong,StringString,Option ExplicitOption Explicit,DateDate,ConstConst,等等。等等。32Visual Basic程序设计教程VBVB有五类表达式:算术表达式、字符串表达式、日有五类表达式:算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式期表达式、关系表达式和逻辑表达式运算符运算符说明说明运算符运算符说明说明+加法加法 整数除法整数除法减法减法
26、 幂幂*乘法乘法ModMod求模求模/浮点数除法浮点数除法取负取负算术运算符算术运算符 33Visual Basic程序设计教程1 1除法除法 计算机使用计算机使用 “/”和和“”代表数学中的除号。代表数学中的除号。“/”用于浮点数除,它将产生一个有小数部分的用于浮点数除,它将产生一个有小数部分的商。而商。而“”则是整数除法,它在进行除之前先将则是整数除法,它在进行除之前先将运算数四舍五入,结果为丢掉小数部分取其整数部运算数四舍五入,结果为丢掉小数部分取其整数部分。注意下面的几个例子:分。注意下面的几个例子:3/23/2结果为结果为1.51.53232结果为结果为1 13.523.52结果为结
27、果为2 234Visual Basic程序设计教程2 2取模运算取模运算ModMod 取模运算是取整除后余数的整数部分。取模运算是取整除后余数的整数部分。VBVB支持支持整数和带小数的数的取模运算。如果是带小数的,整数和带小数的数的取模运算。如果是带小数的,则在运算前进行四舍五入操作。注意下面的例子:则在运算前进行四舍五入操作。注意下面的例子:13 Mod 3 13 Mod 3 结果为结果为1 1,即余数为,即余数为1 13.5 Mod 2 3.5 Mod 2 结果为结果为0 0。先将。先将3.53.5四舍五入为四舍五入为4 4,除,除2 2的余数为的余数为0 07 Mod 2.6 7 Mod
28、 2.6 结果为结果为1 15 Mod 0.495 Mod 0.49除数为除数为0 0错误(如果你把错误(如果你把0.490.49改为改为0.50.5和和0.510.51,试试看会发生什么?),试试看会发生什么?)35Visual Basic程序设计教程2.5.2 算术表达式算术表达式 算术表达式也称数值表达式,是用算术运算符算术表达式也称数值表达式,是用算术运算符把数值型常量、变量、函数连接起来的式子。把数值型常量、变量、函数连接起来的式子。表达式的运算结果是一个数值表达式的运算结果是一个数值 例如:例如:(A1(A1B1/3B1/3X0.5)X0.5)*Sin(X)Sin(X)36Visu
29、al Basic程序设计教程2.5.3 算术运算符的优先规则算术运算符的优先规则运算符优先级运算符优先级 (乘方乘方)-()-(求负求负)*/Mod/Mod+-+-同级左到右同级左到右37Visual Basic程序设计教程说明:说明:(1)/(1)/和的区别:和的区别:1/2=0.51/2=0.5,1 12=02=0 (2)Mod (2)Mod用来求整型数除法的余数。用来求整型数除法的余数。例如:例如:9 Mod 7 9 Mod 7 结果为结果为 2 2 (3)(3)在表达式中乘号不能省略,如在表达式中乘号不能省略,如a a*b b不能不能写成写成ab(ab(或或ab)ab)(4)括号不分大
30、、中、小,一律采用圆括号。括号不分大、中、小,一律采用圆括号。可以嵌套使用可以嵌套使用 例如,例如,xx(x+1)+1 x*(x*(x+1)+1)38Visual Basic程序设计教程窗体是我们进入窗体是我们进入VBVB编程所遇到的第一个对象,它是编程所遇到的第一个对象,它是进行程序界面设计的基础平台。在程序运行时它就是程进行程序界面设计的基础平台。在程序运行时它就是程序的实际窗口。序的实际窗口。使用窗体的使用窗体的“属性属性”定义窗体的外观定义窗体的外观使用窗体的使用窗体的“方法方法”定义窗体的行为定义窗体的行为使用窗体的使用窗体的“事件事件”定义与用户之间的交互定义与用户之间的交互因此了
31、解窗体(包括后续的控件等对象),就是围因此了解窗体(包括后续的控件等对象),就是围绕它的属性、方法和事件展开。这也是学习绕它的属性、方法和事件展开。这也是学习VBVB对象编程对象编程的主要思路。的主要思路。2.6 VB VB编程的开始:使用窗体编程的开始:使用窗体39Visual Basic程序设计教程 程序入口:开始装载窗体程序入口:开始装载窗体 设置窗体显示功能设置窗体显示功能 设置窗体的背景色为绿色设置窗体的背景色为绿色 设置窗体的前景色为红色设置窗体的前景色为红色 设置窗体上对象的字体为黑设置窗体上对象的字体为黑使用字号为使用字号为1515磅磅 换行换行 显示显示Welcome To
32、The Visual Welcome To The Visual BasicBasic 显示显示This is a DemoProgramThis is a DemoProgram 结束装载过程结束装载过程Private Sub Form_Load()Private Sub Form_Load()Show Show Form1.BackColor=vbGreen Form1.BackColor=vbGreen Form1.ForeColor=vbRed Form1.ForeColor=vbRed Form1.FontName=Form1.FontName=黑体黑体 Form1.FontSize
33、=15 Form1.FontSize=15 Print Print Print Welcome To The Print Welcome To The Visual BasicVisual Basic Print This is a Print This is a DemoProgramDemoProgramEnd SubEnd Sub2.6.1 一个使用窗体显示文本的例子一个使用窗体显示文本的例子40Visual Basic程序设计教程 窗体的绝大多数属性可以在属性窗口中设置,窗体的绝大多数属性可以在属性窗口中设置,也可以在程序代码中设置,在程序中输入窗体对象也可以在程序代码中设置,在程序中
34、输入窗体对象名称和名称和“.”“.”分割后会自动跳出窗体的属性和方法,分割后会自动跳出窗体的属性和方法,在这里可以区分属性和方法在这里可以区分属性和方法。2.6.2 窗体的属性窗体的属性41Visual Basic程序设计教程窗体的常用属性窗体的常用属性 自动重画窗体。如需要直接在窗体上显示文本,自动重画窗体。如需要直接在窗体上显示文本,选择选择TrueAutoRedraw3设置窗体显示设置窗体显示3D效果,默认值为效果,默认值为1为为3DAppearace2窗体名称(中文版使用窗体名称(中文版使用(名称名称))。可在程)。可在程序中使用,但不能设置序中使用,但不能设置Name1功能描述功能描
35、述属性名属性名编号编号42Visual Basic程序设计教程决定窗体是否响应用户事件决定窗体是否响应用户事件(如单击窗体如单击窗体)。属。属性值为性值为True或或FalseEnabled 8决定窗体的左上角设置控制菜单按钮,决定窗体的左上角设置控制菜单按钮,选择选择True或或FalseControlBox 7标题。也是程序运行后在标题栏所显示的内容标题。也是程序运行后在标题栏所显示的内容Caption 6窗体边框样式。有六种选择,窗体边框样式。有六种选择,只能在属性窗口选择只能在属性窗口选择BorderStyle 5背景色。在属性窗口选择或者程序代码设置背景色。在属性窗口选择或者程序代码
36、设置BackColor 443Visual Basic程序设计教程这四个属性决定窗体的大小和位置。程序可进行设这四个属性决定窗体的大小和位置。程序可进行设置。置。Height、Width设置窗体的高度和宽度。设置窗体的高度和宽度。Top为窗体到屏幕顶部的距离,为窗体到屏幕顶部的距离,Left为窗体到屏幕左边为窗体到屏幕左边的距离的距离Height WidthTopLeft 11前景色。在属性窗口选择或者程序代码设置前景色。在属性窗口选择或者程序代码设置ForeColor 10设置窗体上对象的字体、字型、大小等。设置窗体上对象的字体、字型、大小等。可在程序中设置可在程序中设置Font 944Vi
37、sual Basic程序设计教程设置窗体运行时的状态,设置窗体运行时的状态,0为正常,为正常,1为最小化,为最小化,2为最大化为最大化WindowState 16可见性。默认为可见性。默认为True。False使窗体及窗体上的对使窗体及窗体上的对象都不可见象都不可见Visible 15给窗体加载一个图像或图形给窗体加载一个图像或图形Picture 14确定窗体右上角最大化按钮是否有效。确定窗体右上角最大化按钮是否有效。确定窗体右上角最小化按钮是否有效确定窗体右上角最小化按钮是否有效MaxButtonMinButton 13指定图标。可以选择窗体最小化时的图标。选择图指定图标。可以选择窗体最小化
38、时的图标。选择图标文件。标文件。Icon 1245Visual Basic程序设计教程2.6.3 窗体的方法窗体的方法 窗体方法就是对窗体的操作行为。窗体方法就是对窗体的操作行为。方法使用格式为:方法使用格式为:Object.方法名方法名 可选参数可选参数 Object为窗体对象的名称(为窗体对象的名称(Name),如果),如果在当前活动窗体,可省略在当前活动窗体,可省略Object或者用关键字或者用关键字Me。46Visual Basic程序设计教程1显示窗体方法(显示窗体方法(Show)功能:显示窗体对象。功能:显示窗体对象。Show方法的使用格式为:方法的使用格式为:Object.Sho
39、w Style 使用使用Show方法如果没有指定窗体名称,则默认当方法如果没有指定窗体名称,则默认当前活动窗体。参数前活动窗体。参数Style是一个整数,决定窗体的模是一个整数,决定窗体的模式,取值式,取值0为无模式,为无模式,1为有模式为有模式47Visual Basic程序设计教程2隐藏窗体方法(隐藏窗体方法(Hide)功能:隐藏窗体。注意这只是不显示窗体而功能:隐藏窗体。注意这只是不显示窗体而不是卸载。要再次显示窗体,使用不是卸载。要再次显示窗体,使用Show方法即方法即可。可。Hide方法的格式为:方法的格式为:Object.Hide 如果如果Object没有被指定,则当前活动窗体被没
40、有被指定,则当前活动窗体被隐藏。隐藏。48Visual Basic程序设计教程3移动窗体方法(移动窗体方法(Move)Move方法可以移动或者改变窗体的大小。使方法可以移动或者改变窗体的大小。使用格式为:用格式为:Object.Move Left,Top,Width,Height 其中,其中,Left是必选参数,是必选参数,Top是可选参数,分是可选参数,分别代表窗体的别代表窗体的x,y方向的坐标。方向的坐标。Width和和Height为为窗体移动到新位置后的高度和宽度。坐标参数的窗体移动到新位置后的高度和宽度。坐标参数的单位默认为缇(单位默认为缇(Twip,1/1440英寸)。可在窗体英寸)
41、。可在窗体属性属性ScaleMode中选择参数单位。中选择参数单位。49Visual Basic程序设计教程4清除窗体方法(清除窗体方法(Cls)Cls(Clear Screen)是清除窗体上的显示)是清除窗体上的显示的文本和图形。如的文本和图形。如Me.Cls为清除当前窗体的显示。为清除当前窗体的显示。5打印方法(打印方法(Print)Print是在窗体上输出文本。是在窗体上输出文本。6打印窗体方法(打印窗体方法(PrintForm)把整个窗体作为位图图像输出到打印机。该把整个窗体作为位图图像输出到打印机。该方法使用的格式为:方法使用的格式为:Object.PrintForm。50Visua
42、l Basic程序设计教程2.6.4 窗体识别的动作:事件窗体识别的动作:事件 在窗体中使用某种事件触发一个过程,以便在窗体中使用某种事件触发一个过程,以便完成某个任务,因此我们也叫它为事件过程。完成某个任务,因此我们也叫它为事件过程。例如:例如:Private Sub Form_Load()Private Sub Form_Load()End Sub End Sub 51Visual Basic程序设计教程 这里程序就是窗体的装载事件过程,称为这里程序就是窗体的装载事件过程,称为LoadLoad过程,过程,LoadLoad就是窗体的一个事件。就是窗体的一个事件。窗体事件过程的一般格式为:窗体
43、事件过程的一般格式为:Private Sub Form_ Private Sub Form_事件名(参数表)事件名(参数表)我们在这里编写处理事件的程我们在这里编写处理事件的程序代码序代码End Sub End Sub 52Visual Basic程序设计教程窗体常用事件:窗体常用事件:1.装载事件(装载事件(Load)程序运行时,通过程序运行时,通过Load事件把窗体装载到内事件把窗体装载到内存。存。2.卸载事件(卸载事件(Unload)窗体卸载时触发窗体卸载时触发Unload事件,使窗体从内存事件,使窗体从内存中退出并从屏幕中退出并从屏幕 上消失。上消失。Private Sub Form_
44、Unload(Cancel As Integer)53Visual Basic程序设计教程3.活动活动/非活动事件(非活动事件(Activate/Deactivate)Private Sub Form_Activate()Private Sub Form_Deactivate()使用使用Show可触发这个活动过程,使用可触发这个活动过程,使用Hide触触发非活动过程。发非活动过程。54Visual Basic程序设计教程4.重绘窗体事件(重绘窗体事件(Paint/Resize)当窗体被移动或者改变大小时,触发当窗体被移动或者改变大小时,触发Paint事件。事件。如果在窗体上有图形输出,则可以使
45、用如果在窗体上有图形输出,则可以使用Paint事件过程事件过程重绘图形。重绘图形。窗体改变了大小,原来窗体上的控件的布局比例窗体改变了大小,原来窗体上的控件的布局比例发生了改变,为此可以进入发生了改变,为此可以进入Resize事件过程重新调整事件过程重新调整控件的布局,使之适合新的窗体大小。控件的布局,使之适合新的窗体大小。55Visual Basic程序设计教程2.6.6 TabTab键和焦点键和焦点焦点焦点对象的活动状态。对象的活动状态。改变对象焦点的方法:改变对象焦点的方法:1.使用鼠标点击或者使用使用鼠标点击或者使用Tab键键 使用使用Tab键焦点的移动次序与对象的键焦点的移动次序与对
46、象的Tabindex属性有关。属性有关。56Visual Basic程序设计教程2.程序中改变程序中改变 对象对象.SetFocus 对象对象.LostFocus一个对象能否得到焦点还与对象本身、对象的其一个对象能否得到焦点还与对象本身、对象的其他属性他属性(Enabled)有关。有关。57Visual Basic程序设计教程计算机的工作原理:计算机的工作原理:数据输入数据输入处理机(程序)处理机(程序)信息输出信息输出 在构造一个程序时必须考虑:如何给变量赋在构造一个程序时必须考虑:如何给变量赋值,如何输入数据并如何把有关计算结果输出。值,如何输入数据并如何把有关计算结果输出。赋值就是把一个
47、合适的值(数或字符)存入赋值就是把一个合适的值(数或字符)存入指定的变量中,而值的来源可以是程序直接产生,指定的变量中,而值的来源可以是程序直接产生,也可以是从键盘输入,也可以来自其他程序的传也可以是从键盘输入,也可以来自其他程序的传送或来自于文件。送或来自于文件。58Visual Basic程序设计教程2.7.1 如何进行赋值操作如何进行赋值操作赋值语句的格式如下:赋值语句的格式如下:Let 变量名变量名=表达式表达式 或者:或者:变量名变量名=表达式表达式例如:例如:Sum=100 x=x+1 CmdAdd.Caption=“计算计算”59Visual Basic程序设计教程使用赋值语句要
48、注意以下问题:使用赋值语句要注意以下问题:1“=”不是数学中的等号的意思,是一个赋不是数学中的等号的意思,是一个赋值的运算符,叫做赋值号。值的运算符,叫做赋值号。2对变量的赋值后,以新值代替了原来的值。对变量的赋值后,以新值代替了原来的值。3在表达式中的变量应先赋值。如果是首次在表达式中的变量应先赋值。如果是首次直接被用在表达式中,则直接被用在表达式中,则VB自动赋初值:自动赋初值:(1)如果是数值型变量,则自动赋初值为)如果是数值型变量,则自动赋初值为0。(2)字符型变量的初值为空。)字符型变量的初值为空。60Visual Basic程序设计教程 4同一个变量出现在赋值号的两边的意义不同。同
49、一个变量出现在赋值号的两边的意义不同。在右边的变量是取出变量的值参与运算,在左边则在右边的变量是取出变量的值参与运算,在左边则是保存右边表达式结果值。是保存右边表达式结果值。5一般要求变量的数据类型和表达式的结果一般要求变量的数据类型和表达式的结果值的类型一致,或者说表达式的值能够被所赋值的值的类型一致,或者说表达式的值能够被所赋值的变量的类型所接纳。变量的类型所接纳。61Visual Basic程序设计教程【例【例2-3】计算半径为】计算半径为5的圆面积和圆周长。的圆面积和圆周长。Private Sub Form_Click()Const PI=3.141526 定义常量定义常量Dim R
50、As integer,Area As Single,Perimeter As Single 定义变量定义变量R=5给半径变量赋值给半径变量赋值Area=PI*R*R计算后的面积值赋给变量计算后的面积值赋给变量AreaPerimeter=2*PI*R周长值赋给变量周长值赋给变量Parimeter Print“半径半径”;R,”面积面积”;Area,”周长周长”;Perimeter输出半径、面积。周长输出半径、面积。周长End Sub 62Visual Basic程序设计教程2.7.2 使用输入对话框使用输入对话框InputBoxInputBox函数函数【例例2-4】计算半径为计算半径为R的圆面积