1、2022-7-25什么是什么是Visual BasicVisual Basic Visual Basic 可视化程序设计的开发环境。程序设计 使用程序设计语言完成软件开发任务程序设计语言是人与计算机交流的工具,是由字、词和语法规则构成的指令系统。2022-7-25程序设计语言程序设计语言 分类机器执行角度应用角度机器语言高级语言系统软件科学计算数据库管理图形设计人工智能汇编语言2022-7-25程序设计(1)数据描述数据描述把被处理的信息描述成计算机可以接受的数据形式。(2)对数据的处理对数据的处理是指对数据进行输入、输出、计算、存储等一系列的活动。程序设计任务主要完成两方面工作:2022-7
2、-25程序设计数据处理的目的是为了提取有用的数据成分,获得我们有用的资料。程序设计的工作成果称为源程序。高级语言源程序有两种执行方式:编译执行解释执行2022-7-25VB 6.0VB 6.0的特点的特点 VB6.0是目前最容易学习的面向对象的程序设计语言。VB6.0有非常完善的帮助系统。VB6.0采用了面向对象的程序设计方法。VB6.0采用了事件驱动机制。针对VB6.0的对象提供了丰富的方法。VB6.0有丰富的数据类型和函数采用结构化编程语言。VB6.0提供了功能强大的Active控件和对象。VB6.0是有力的Internet开发工具。VB6.0有先进的数据技。2022-7-25 例例1.1
3、1.1第一个第一个VBVB程序。程序。设计一个窗体,在窗体上添加3个命令按钮。运行程序时,单击“显示”,在窗体上显示“你单击了“显示”按钮”。若单击“变大”或“变小”按钮,使窗体尺寸增加或减少,增加或减少的尺寸都为50Twip。2022-7-25VB 6.0VB 6.0集成开发环境集成开发环境 2022-7-25标题栏 l 设计状态:允许程序员设计应用程序用户界面和编写代码。l 运行状态:表示正在运行程序,此时不能设计应用程序用户界面和编写代码。l 中断状态:运行的程序暂时停下来,还可以继续运行程序,此时不能设计应用程序用户界面,但可以编写代码。2022-7-25菜单栏 位于标题栏的下方,菜单
4、栏中显示“文件”、“编辑”、“视图”、“工程”等13个菜单项,每个菜单项都有一个下拉菜单,在下拉菜单中列出的各种执行命令。2022-7-25工具栏 位于菜单栏的下方,工具栏中提供了部分用图标表示的最常用菜单命令,当鼠标指针指向某个图标,将显示该图标功能的简要提示信息,单击图标即可执行相应命令。2022-7-25工具箱 位于窗体窗口的左侧有一个标准控件工具箱。每个控件用一个图标表示。利用这些工具可以在窗体上设计各种控件。2022-7-25窗体窗口 位于集成开发环境工作区的中间,窗体是程序员是设计图形用户界面的工作台,各类控件对象必须建立在窗体上,用它创建应用程序的外观,运行程序时窗体称为窗口。2
5、022-7-25代码窗口 位于集成开发环境工作区的中间,用它可编辑程序代码。2022-7-25工程资源窗口 位于窗体窗口的右上部,它以树状显示当前工程包含的所有文件。VB把一个应用程序称为一个工程。一个工程至少包含一个工程文件(.Vbp)和一个窗体文件(.Frm)。l “查看代码”按钮:用于显示或编辑代码。l “查看对象”按钮:用于显示或编辑正在设计的窗体。l “切换文件夹”按钮:用于切换工程清单的显示方式。2022-7-25属性窗口 2022-7-25窗体布局窗口 窗体布局窗口可调整程序运行时窗体显示的位置。2022-7-25控件的画法 l 单击工具箱中的控件按钮,在窗体编辑区拖动鼠标画出对
6、应的控件。l 双击工具箱中的控件按钮,即可自动在窗体中央画出对应的控件,再拖动到适当位置。按住Ctrl键,单击工具箱中的控件按钮,松开Ctrl键,在窗体编辑区拖动鼠标可画出多个对应的控件。画完之后单击工具箱中的其他控件。2022-7-25建立建立VBVB应用程序的一般方法应用程序的一般方法 1.创建一个工程2.为窗体添加对象3.设置对象属性4.编写代码 5.运行工程 6.调试工程 7.保存工程 2022-7-25可视化程序设计的概念可视化程序设计的概念 对象(Object)对象的属性(Properties)对象事件(Event)事件过程 方法 2022-7-25综合运用 例例1.2可移动的文字
7、。例例1.3显示系统当前时间。2022-7-25VB的基本数据类型 “数据”是信息在计算机内的表现形式,也是程序的处理对象。不同类型的数据有不同的操作方式和不同的取值范围。VB具有系统定义的基本数据类型,而且允许用户根据需要定义自己的数据类型。VB提供的基本数据类型主要有:字符串型、数值型、逻辑型和日期型。2022-7-25例例2.1 AB 与 A*B。设计一个窗体,在窗体上添加一个命令按钮。运行程序时,单击“开始”,程序将要求输入A和B,并在窗体显示计算结果。(结果为什么存在问题)2022-7-25字符串型 字符串(String)是一个字符序列,由放在一对双引号中的ASCII字符(除双引号和
8、回车符之外)、汉字及其它可打印字符组成。例如:以下是合法的VB字符串,“Hello”“We are students.”“中华人民共和国”“2+3=?”“2000”“#”“¥25,000.00”“”(空字符串)2022-7-25字符串型值得注意的是:字符串中包含的字符个数称为字符串长度。在VB6.0中,把汉字作为一个字符处理。字符串分为变长字符串和定长字符串。长度为0(即不含任何字符的字符串)称为空字符串。双引号在程序代码中起字符串的界定作用。在字符串中,字母的大小写是有区别的。例如,字符串“ABC”与“abc”是两个不相等的字符串。2022-7-25数值型VB的数值型数据分为整型数和实型数两
9、大类。2022-7-25整型 整型数是不带小数点和指数符号的数。十进制整型数由 09 的数字序列组成,可以带正号或负号。例如:147589565,-3145,327009 等都是十进制整数。2022-7-25整型 整型数按示数范围的不同分为整数、长整数和字节型整数。整型数和长整数还可以有三种表示形式,即十进制、八进制和十六进制。2022-7-25整型整数(Integer)长整数(Long)字节型整数(Byte)范围-32768,+32767-2147483648,+21474836470,255存储两个字节(16位)4个字节(32位)1 个字节(8 位)数值示例十进制-314513245675
10、八进制&01277-&5557764&十六进制&H32f-&hA2BCD5F&2022-7-25实型 实型数是带有小数部分的数,分为浮点数和定点数。浮点数由三部分组成:符号、指数及尾数。2022-7-25逻辑型逻辑型数据(Boolean)以 2个字节(16 位)存储。逻辑值逻辑真逻辑假True(-1)False(0)2022-7-25日期型 日期型(Date)数据存储为 8 个字节(64 位)浮点数值形式。可以表示的日期范围从 100 年 1 月 1 日到 9999 年 12 月 31 日,时间可以从 0:00:00 到23:59:59。2022-7-25VB常量与变量 内部常量 用户自定义常
11、量根据VB数据类型,一般常量有整型常量、长整型常量、单精度型常量、双精度型常量、字节型常量、字符串型常量、逻辑型常量和日期型常量。用户自定义常量分一般常量和符号常量两种形式。2022-7-25Const语句的一般格式:Const 常量名常量名 As 类型名类型名=表达式表达式 下面是正确的符号常量定义语句。Const pi=3.14159 定义pi是单精度符号常量,其值为3.14159Const max As Integer=70 定义max是整型符号常量,其值为702022-7-25变量变量在程序中,其值可以改变的称为变量。变量名是变量的标识。变量名的命名规则同常量名。变量具有名称、类型和值
12、三个属性。VB有两种类型变量:属性变量和一般变量。一般变量是由用户自己定义的。定义变量常用Dim语句,格式如下:Dim 变量名变量名1 AS 类型类型1 ,变量名变量名2 As 类型类型2 例如:Dim chr1 As String2022-7-25算术运算符和算术表达式算术运算符和算术表达式在VB中,算术运算符有:乘方号()、取负号(-)、乘号(*)、除号(/)、整除号()、求余运算符(Mod)、加号(+)和减号(-)。Private Sub Command1_Click()Print 25 5*5End Sub输出结果为1。因为先计算乘法,再完成整除2525的运算。2022-7-25字符串
13、运算符和字符串表达式字符串运算符和字符串表达式在VB中,字符串运算符有:加号(+)和字符串连接运算符号(&)。两个运算符的作用相同,都是将两个字符串连接成一个字符串。例如:“面向对象”&“程序设计”结果仍是一个字符串:面向对象程序设计 “面向对象”+“程序设计”结果仍是一个字符串:面向对象程序设计 2022-7-25关系运算符和关系表达式关系运算符和关系表达式在VB中,关系运算符有:大于号()、小于号(=)、小于等于号(=)、等于号(=)和不等于号(或)。关系表达式的一般格式:表达式表达式 关系运算符关系运算符 表达式表达式 2022-7-25逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式在VB
14、中,常用的逻辑运算符有:非(Not)、与(And)、或(Or)、异或(Xor)、等价(Eqv)和蕴含(Imp)。逻辑运算符,用来对两个逻辑量进行运算,运算的结果是逻辑型的,结果值True表示真,False表示假。逻辑表达式的一般格式:表达式表达式 逻辑运算符逻辑运算符 表达式表达式例如:A+B=C And X=Y是逻辑表达式,在求解该表达式时,先完成算数运算,再解决关系运算,最后进行逻辑运算。整个表达式的含义是,当A+B等于C并且X等于Y时,该表达式的结果为真。2022-7-25VB常用内部函数 例例2.2 飞机高度。设计一个窗体,在窗体上添加一个名为“计算”的命令按钮。运行程序时,单击“计算
15、”输出雷达搜索到飞机的高度。设雷达在仰角300时发出电波,在B点碰到飞机,经过1/3000秒收到来自飞机的回波。电波的速度为3108米/秒,问飞机的高度。2022-7-25常用数学函数常用数学函数常用数学函数主要包括三角函数、指数函数、对数函数、平方根函数、绝对值函数等,它们与数学上的定义一致。注意:所有数学函数的自变量是数值型,计算结果也是数值型。自变量可以是常数、变量或表达式,还可以是函数。表中的三角函数自变量的单位为弧度。Sgn(n)函数,当n 0返回1。Rnd(n)函数产生一个01之间的随机双精度数,包括0,但并不包括1。2022-7-25常用转换函数常用转换函数常用转换函数主要包括数
16、值型数据与字符型数据之间的转换,以及数值型数据之间的转换。常用Val函数把输入的数字字符串转换成数值,用Str函数把要输出的数值转换成字符串。运行下面程序,和例2.2结果相同。Option ExplicitPrivate Sub Command1_Click()Const Vg=300000000#Const Pi=3.1415 Dim OB,AB OB=Vg/3000/2 AB=OB*Sin(30*Pi/180)Print 飞机的高度是:+Str(AB)+米End Sub2022-7-25 Asc和Chr是一对互逆函数,Chr只能计算一个字符串首字符的ASCII编码,控制字符可以使用Chr函
17、数输入。运行下面程序,观察结果(见图2.6转换函数)。Private Sub Command1_Click()Print Chr(Asc(A),Chr(Asc(ABC)Print Asc(A),Asc(ABC)Print Trim(Asc(A),Trim(Asc(ABC)Print 显示在上一行+Chr(13)+Chr(10)+显示在下一行End Sub2022-7-25常用字符串函数常用字符串函数VB 6.0在字符存储和处理中,采用了Unicode编码。Unicode编码将一个汉字和一个西文字符都视为一个字符,占用两个字节存储。Private Sub Command1_Click()str1
18、=字符串函数与运算 str2=Mid(str1,4,2)Print str2 N=InStr(str1,str2)Print N,InStr(str1,字符子串)Print str1+的长度是+Str(Len(str1)Print LCase(abCDef)+Space(3)+UCase(abCDef)Print String(10,)Print 茶好吃,StrReverse(茶好吃)End Sub2022-7-25InputBoxInputBox函数函数InputBox函数的返回一个字符串。在调用InputBox函数时,系统将弹出一个对话框,该对话框能接收用户输入数据。InputBox函数一
19、般格式如下:InputBox(提示信息提示信息,标题,标题,确省值,确省值)Private Sub Command1_Click()Dim L L=Val(InputBox(长度(厘米),输入)Print 长度(厘米):;L Print 长度(Twip):;567*LEnd Sub2022-7-25窗体 窗体是程序员的“工作台”,用以可视化地建立应用程序。窗体是 VB 中一个重要的对象,它除了具有自己的属性、方法外,还可放置除了窗体之外的其它控件。VB 的窗体和控件是具有自己的属性、方法和事件的对象。属性就是对象的性质,方法就是对象的动作,事件就是对象的响应。2022-7-25窗体属性 窗体的
20、属性:决定了窗体的外观和操作。设置方法:通过属性窗口设置和通过程序代码设置。2022-7-25窗体主要属性NameName(名称)名称)标识符,是程序代码中使用的对象名。CaptionCaption(标题)标题)字符型,设定或返回窗体标题栏中显示的文本。BackColorBackColor(背景颜色)背景颜色)返回或设置背景颜色。ForeColorForeColor(前景颜色)前景颜色)返回或设定前景颜色。HeightHeight、WidthWidth(高、宽)高、宽)数值型,返回或指定窗体的高度和宽度。LeftLeft、TopTop(左边、顶边位置)左边、顶边位置)数值型,返回或确定窗体左上
21、角的位置。2022-7-25用不同的字体、字型和字号时在窗体显示“航空英雄杨立伟”。例例2.42.4航空英雄杨立伟。设计一个窗体,窗体的标题为“航空英雄杨立伟”,并为窗体加载一幅图片。运行程序时,单击窗体,用不同的字体、字型和字号时在窗体显示“航空英雄杨立伟”。2022-7-25窗体事件 Microsoft Windows 操作系统连续地监视每一个窗口的活动或事件的信号。事件可通过单击鼠标或按下按键等操作产生,也可通过程序控制产生,还可由另一个窗口的操作产生。2022-7-25窗体主要事件Click Click 事件事件用鼠标单击某个对象就触发了 Click 事件,调用相应的事件过程。DblC
22、lick DblClick 事件事件用鼠标双击某个对象就触发了 DblClick 事件,调用相应的事件过程。Load Load 事件事件Load 是把窗体装入内存工作区时发生的事件。在缺省情况(AutoReDraw=False)下,Load 事件过程是不能在窗体中显示输出的。2022-7-25窗体主要事件Activate Activate 事件事件Load 事件发生后,系统还会自动产生一个 Activate 事件。Activate 事件过程处理完成后,程序进入“等待事件”状态,当某一事件发生,就对其过程进行处理,之后再等待下一事件发生。UnLoad UnLoad 事件事件当用户关闭窗体时,会发
23、生一个 Unload 事件。ResizeResize事件事件Resize事件是当程序运行后,窗体的大小被改变时触发的事件。2022-7-25Print Print 方法方法格式:对象名.Print 表达式 ,|;表达式 说明:(1)对象名 可以是窗体、立即窗口、图片框、打印机。(2)表达式 可以是数值或字符串表达式。(3)当输出多个表达式时用分隔符隔开。逗号:分区格式输出,以 14 个字符为一区;分号或空格:紧凑格式输出。(4)执行 Print 方法时,命令行的末尾有逗号或分号,则下一次 Print 方法在同一行接着打印,否则下次 Print 方法另起一行。窗体主要方法2022-7-25Cls
24、 Cls 方法方法格式:格式:.ClsClsCls 用于清除由Print方法显示的文本或在图片框中显示的图形,并把光标移到对象的左上角(0,0)。窗体主要方法2022-7-25Move Move 方法方法格式:格式:对象名对象名.Move Move 左边距左边距 ,上边距上边距 ,宽度宽度 ,高度高度 Move方法可在程序中移动窗体和控件,并可以改变其大小。窗体主要方法2022-7-25综合运用综合运用 例例2.52.5可扩大的窗体。可扩大的窗体。设计一个窗体,窗体的标题为“可扩大的窗体”,在界面设计时为窗体加载一幅任意图形。运行程序时,单击窗体使窗体的长和宽都扩大原来的1.1倍,并使窗体居中
25、显示。例例2.62.6变色窗体。变色窗体。设计一个窗体,窗体的标题为“变色窗体”。运行程序时,单击窗体,使窗体变成绿色,并使窗体向下和向右都移动100Twip,同时在窗体输出窗体的位置。单击窗体的关闭按钮,使窗体变成红色,同时在窗体的标题输出系统时间。2022-7-25顺序结构程序设计 在事件驱动机制中,由用户激发的某个事件去执行相应的事件过程。这些事件处理过程之间并无特定的执行顺序,但每个事件过程内部却包含着三种结构。在顺序结构中,语句将按照出现的顺序逐条执行。2022-7-25例例3.1 简单电路。R110欧,R220欧,R330欧,电源电压恒定不变,若开关S1闭合,S2断开时,电流表的读
26、数是0.3A,求(1)电源电压多大?(2)当S1和S2都断开时,电流表的读数多大?(3)当S1、S2都闭合时,电流表的读数是多大?2022-7-25变量名=表达式或:对象名.属性名=表达式赋值语句的含义是:(1)计算赋值号右边表达式的值;(2)将此值赋给赋值号左边的标识符代表的变量或控件属性,作为它的当前值;(3)该值一直保存到下一次再对它赋值为止。赋值语句基本含义赋值语句基本含义2022-7-25赋值相容 赋值语句中的标识符代表一个存储单元。执行赋值语句时,如果这个存储单元的结构和大小能够正确地表示赋值号右边的表达式的值,那么,就称该赋值语句是赋值相容的。2022-7-25数值型与字符串型
27、1.如果字符串的形式表示数值,则可将字符串赋予数值变量。也可将数值赋予字符串变量。2.如果把非数值形式的字符串赋给数值变量,则会出现运行错误。3.把一个整数赋给一个实变量,将不会出什么错;4.当把一个长整数赋给一个单精度变量,就可能会受示数精度的影响。2022-7-25注释语句格式:格式:注释内容注释内容 撇号撇号说明:说明:1.1.此语句仅起注释作用,不被解释和编译。此语句仅起注释作用,不被解释和编译。2.2.任何字符(包括汉字)都可以作为注释内容。任何字符(包括汉字)都可以作为注释内容。3.3.此语句可放在过程、模块的开头,也可放在执行此语句可放在过程、模块的开头,也可放在执行语句的后面,
28、但必须是一行中的最后一个语句。语句的后面,但必须是一行中的最后一个语句。2022-7-25暂停语句格式:Stop说明:1.可放在过程中的任何地方,用来暂停程序执行,相当于设置断点。2.类似于 Run 菜单中的 Break 命令,系统将自动打开立即窗口(Debug),方便程序员调试跟踪程序。3.调试完毕,生成可执行文件之前,应删去所有的Stop 语句。2022-7-25结束语句格式:End说明:1.通常用来结束程序的执行。2.程序没有 End 语句,或虽然有,但没执行,运行没有影响,但不能正常结束。3.为了保持完整性,程序应该通过 End 语句结束执行。4.其它用途:End Sub 结束一个 S
29、ub 过程 End Function 结束一个 Function 过程 End If 结束一个 If 语句块 End Type 结束记录类型定义 End Select 结束情况语句2022-7-25命令按钮(CommandButton)控件 命令按钮是最常使用的控件之一。命令按钮最多设置的属性是Caption,一般使用属性窗口设置该属性,以便修改命令按钮的标题。命令按钮最常使用的事件是Click。2022-7-25命令按钮属性命令按钮属性(1)(名称)在程序中它是识别命令按钮的标识符。窗体中第一个建立的命令缺省名称是Command1,后续的命令按钮缺省名称分别是Command2、Command
30、3等。名称属性为只读属性。只读属性的含义是,这样的属性只允许在界面设计时修改,在程序中不能修改这样的属性。(2)Caption属性Caption属性是字符串类型,是显示在命令按钮上的标题。即可以在界面设计时通过属性窗口修改,也可以使用代码设置。2022-7-25(3)Default属性Default属性是布尔类型,当命令按钮的Default属性设置为True时,按回车键等效于用鼠标单击该按钮。一个窗体只能有一个命令按钮的Default属性设置为True。命令按钮的Default属性缺省值为False。(4)Cancel属性Cancel属性是布尔类型,当命令按钮的Cancel属性设置为True时
31、,按Esc键等效于用鼠标单击该按钮。一个窗体只能有一个命令按钮的Cancel属性设置为True。命令按钮的Cancel属性缺省值为False。2022-7-25(5)Style属性和Picture属性Style属性决定命令按钮的外观,只能取0或1。当此属性设置为0时,表示标准命令按钮,该按钮只能显示文字,并且不能改变背景颜色和前景颜色,更不能显示图标。当此属性设置为1时,表示图形命令按钮,图形即能显示文字,能改变背景颜色和前景颜色,也能显示图标。命令按钮的Picture属性同窗体的Picture属性,用来显示图形。(6)ToolTipText属性ToolTipText属性是字符串类型,用于设置
32、命令按钮的提示信息,运行程序过程中,若鼠标指向命令按钮并停留时,显示命令按钮ToolTipText的字符串。2022-7-25(8)Enabled属性Enabled属性是布尔类型,用于设置命令按钮是否可以操作,运行程序时,若命令按钮的Enabled属性设置为False,命令按钮呈灰色,此时命令按钮禁止操作。当命令按钮的Enabled属性设置为True时,允许用户操作命令按钮。(9)Visible属性Visible属性是布尔类型,用于设置命令按钮是否可见。(10)其它属性 命令按钮也有和大小、位置有关的属性,有Height、Left、Top和Width。不同的是,窗体的Left和Top是相对于屏
33、幕,命令按钮的Left和Top是相对于窗体。另外,命令按钮能够输出文字,因此有与Font相关的属性。2022-7-25例例3.2老师和学生。设计一个窗体,在窗体上添加两个命令按钮。运行程序时,“老师”可以操作,“学生”不能操作,单击“老师”按钮后“老师”不能操作,“学生”可以操作。单击“学生”后,命令按钮状态恢复成原始状态。用鼠标指向命令按钮并停留时,显示提示信息。2022-7-25命令按钮事件命令按钮事件命令按钮它是用户与程序交互的最简便的方法。命令按钮除最常使用的Click事件。命令按钮常用到的事件有:Mouse Down事件、MouseUp事件、MouseMove 事件等。Mouse D
34、own事件 2022-7-25例例3.3事件顺序。设计一个窗体,在窗体上添加一个命令按钮。并编写命令按钮被压下、单击和抬起的事件过程,在事件过程中输出命令按钮的状态。要求命令按钮被压下和正常状态分别显示不同图形。2022-7-25标签控件标签控件标签控件(Label)也称标签或标签框,是最常使用的控件之一,常用于输出文本,显示提示信息,用标签控件输出的文本、提示信息不能编辑、修改。所以标签控件常用来输出标题、显示处理结果或标识那些不带Caption属性的控件,如下面讲的TextBox控件。2022-7-25标签控件属性标签控件属性(1)(名称)属性在界面设计时,用Name属性设置标签控件的名称
35、。随着标签控件的建立,系统赋给标签控件的隐含名称为Label1、Label2等,在隐含名称中Label永远保持不变,变化的是后边的序号,能表示出是第几个添加的标签控件。在程序中对控件的操作,都是通过名称来识别对象。(2)Caption属性Caption属性是字符串类型,用于设置该标签控件的标题。该属性值就是标签控件要显示的内容,它既可以在属性窗口中设定,也可用代码改变控件显示的内容。2022-7-25(3)Alignment属性数值型,用于设置标题的对齐方式,可设置为0、1和2,其作用分别是:左对齐、右对齐和 中间对齐。(4)AutoSize属性AutoSize属性是布尔类型,标签的大小是否随
36、标题内容的大小自动调整。当该属性设置为True时,标签的大小随标题内容自动调整,使标签的大小正好适应标题,且不换行。当该属性设置为False时,标签的大小不随标题内容自动调整,标题超过标签尺寸的部分不能显示。确省值为False。2022-7-25(5)BorderStyle属性数值型,用于设置边框的样式,只能取0或1,其作用如下:0标签无边界线,确省值。1标签有边界线。(6)BackStyle属性数值型,用于设置背景的样式,只能取0或1,其作用如下:0透明显示,确省值。1不透明显示。2022-7-25文本框文本框(TextBox)TextBox)控件控件 文本框属性文本框属性(1)Text属性
37、Text属性是字符串类型,用于设置文本框中显示的文字。该属性值是文本框要显示的内容,它既可以在属性窗口中设定,也可用代码改变控件显示的内容。(2)PasswordChar属性PasswordChar属性是字符串类型,用于设置文本框中显示的字符,常用于口令输入。2022-7-25(3)Multiline属性Multiline属性是布尔类型,用于设置文本框中是否可以输入多行文本。缺省值是False,此时文本框中只能输入一行文本。当设置该属性为True时,文本框可以输入多行文本。当该属性设置为False时,PasswordChar属性才能发挥作用。(4)ScrollBars属性 ScrollBars
38、属性是数值型,用于设置文本框中是否有滚动条,什么样的滚动条。可取值0、1、2、3,缺省值是0。2022-7-25文本框事件和方法文本框事件和方法文本框支持Click和DblClick事件,常用的事件还有:(1)Change事件在文本框中输入信息或在程序中改变Text属性值时,都会触发该事件。(2)LostFocus事件按下Tab键或用鼠标单击其它对象使焦点离开该文本框时,触发该事件。(3)KeyPree事件当文本框具有焦点时,按下任意键,都会触发该事件。通常可用该事件检查输入的字符。2022-7-25TextBox控件常用的方法有:SetFocus方法,其作用是把焦点设置到指定的对象,如:Te
39、xt1.SetFocus将使当前窗体中的文本框text1能够接收键盘输入的字符。2022-7-25综合运用 例例3.6字符和ASCII例例3.7相对运动一平板车,质量M=100千克,停在水平路面上。车身的平板离地面的高度h=1.25米,一质量m=50千克的小物块置于车的平板上,它到车尾端的距离b=1.00米,与车板间的滑动摩擦系数u=0.20,如图所示。今对平板车施一水平方向的恒力,使车向前行驶,结果物块从车板上滑落。物块刚离开车板的时刻,车向前行驶的距离S0=2.0米。求物块落地时,落地点到车尾的水平距离S。不计路面与平板车间以及轮轴之间的摩擦,取g=9.8米/秒2。2022-7-25认识选
40、择控件和分支程序设计 例例4.14.1设置字体。运行程序时,先选择字体、字形、字体颜色和效果,再单击“确定”,程序将按照选择设置标题为“程序设计”的标签框。2022-7-25分支程序设计 行If结构行If结构要求把判断结构写在一行。行If结构有如下两种形式:单分支的行If结构,格式如下:If If 逻辑表达式逻辑表达式 Then Then 语句组语句组1 1双分支的行If结构,格式如下:If If 逻辑表达式逻辑表达式 Then Then 语句组语句组1 1 Else Else 语句组语句组2 2 演示演示2022-7-25逻辑表达式语句组1语句组2逻辑表达式语句组1演示演示2022-7-25
41、例例4.2找最小数。设计一个窗体,在窗体上添加四个标签、四个文本框和两个命令按钮。运行程序时,先在输入要比较的三个数,再单击“确定”,程序将找出三个数中最小的数,并把计算结果显示在最小数文本框中。2022-7-25块块If If结构结构 单分支的块If结构,格式如下:If If 逻辑表达式逻辑表达式 ThenThen 语句序列语句序列End IfEnd If双分支的块IF结构,格式如下:If If 逻辑表达式逻辑表达式 ThenThen 语句序列语句序列1 1ElseElse 语句序列语句序列2 2End IfEnd If2022-7-25多分支的块IF结构,格式如下:If 逻辑表达式逻辑表达
42、式1 Then 语句序列语句序列1ElseIf 逻辑表达式逻辑表达式2 Then 语句序列语句序列2ElseIf逻辑表达式逻辑表达式n Then 语句序列语句序列nElse 语句序列语句序列n+1End If2022-7-25块块IfIf结构的嵌套结构的嵌套 上边介绍了块If结构的基本形式,在实际使用中常需要复杂的多重选择,用一个块If结构是不行的,必须用嵌套的块If结构。所谓嵌套的块If结构,指在一个块If结构中,又包含另一个块If结构。2022-7-25例例4.3判断三角形。设计一个窗体,在窗体上添加五个标签、三个文本框和两个命令按钮。运行程序时,先在输入文本框中输入边长,再单击“判断”,
43、程序将判断是否能构成三角形及其具体的形状:锐角,直角,钝角,并把计算结果显示在结论标签框中。2022-7-25多分支结构多分支结构 有时程序可能有多种选择,可以使用多分支结构。多分支结构以多分支语句Select Case开头,以End Select结束,Select Case语句也称情况语句,它适用于描述较多分支。使用该结构会使程序简洁,多分支结构的格式为:Select Case 测试表达式测试表达式 Case 表达式列表表达式列表1 语句序列语句序列1 Case 表达式列表表达式列表2 语句序列语句序列2 Case 表达式列表表达式列表n 语句序列语句序列n Case Else 语句序列语句
44、序列n+1 End Select 2022-7-25例例4.4成绩评定。设计一个窗体,在窗体上添加两个标签、两个文本框和两个命令按钮。运行程序时,先在输入文本框中输入一个百分制的成绩,再单击“计算”,程序将计算出结论,并把结论显示在文本框中。成绩大于等于90结论为“优秀”,成绩在80到90(含80、不含90)结论为“良好”,成绩在60到80(含60、不含80)结论为“及格”,60以下结论为“不及格”。若单击“结束”按钮,结束程序运行。2022-7-25单选按钮单选按钮(OptionButton)OptionButton)控件控件 单选按钮外观是一个圆圈。运行程序时,若单击单选按钮,则圆圈中间会
45、出现一个黑色的圆点,表示该项被选择。一组单选按钮只能有一个被选择。2022-7-25单选按钮的属性(1)Value属性属性Value属性标志单选按钮是否被选择,若单选按钮被选择,则它的Value属性值为True,未被选择其值为False(缺省值)。(2)Caption属性属性单选按钮的标题,是字符串类型。(3)名称和其他属性名称和其他属性 2022-7-25单选按钮的事件单选按钮控件支持Click事件。运行程序时单击单选按钮,便触发Click事件,若存在该按钮的事件过程,将执行此事件过程。通常不编写这样的事件过程。2022-7-25复选按钮复选按钮(CheckBox)CheckBox)控件控件
46、 复选按钮也称检查框,该控件可用来提供多选择,用户可以从中选择一个或多个,还可以一个也不选择。复选按钮外观是一个小方框,若单击某一个复选按钮,则在小方框中间将出现“”符号标记,表示该项被选择。若再次单击被选择的复选按钮,则取消对该复选按钮的选择。2022-7-25复选按钮的属性(1)Value属性属性复选按钮Value属性是数值型,其值为0表示未被选择,其值为1表示被选择,其值为2表示禁止用户选择,此时复选按钮为灰色,0是缺省值。(2)Caption属性属性复选按钮的标题,是字符串类型。(3)名称和其他属性名称和其他属性 2022-7-25框架框架(Frame)Frame)控件控件 框架控件主
47、要用于创建多个单选按钮或复选按钮组。在操作一个框架内的单选按钮时,不会影响该框架外的单选按钮。框架是一个控件的容器,当框架设置为不能操作或不可见时,框架中的控件也变得不能操作或不可见。2022-7-25框架控件的属性(1)Caption属性属性框架控件的标题,是字符串类型。(2)名称和其他属性名称和其他属性 2022-7-25框架控件的事件框架控件支持Click事件,通常不编写这样的事件过程。在界面设计时,要先建立框架,然后在框架内画上其他控件。不要把框架外的控件拖动到框架内,这样的控件不属于该框架的。2022-7-25列表框和组合框 例例4.5旅游信息查询。设计一个窗体,在窗体上添加一个组合
48、框、一个列表框、两个标签和一个命令按钮。运行程序时,用户可从请选择目的地中选择地名,在旅游信息列表中将出现旅游景区。2022-7-25列表框属性列表框属性(1)Text属性属性返回列表框被选择的列表项目,是字符串类型。在列表框中该属性为只读属性,界面设计阶段不能修改。(2)ListIndex属性属性设置或返回列表框被选择的列表项的序号,是整型。在列表框中第一个列表项序号为0,第二个列表项序号为1,最后一个列表项目序号为Listcount-1。(3)Listcount属性属性 返回列表框列表项的个数,是整型。2022-7-25(4)List属性属性字符串数组,每个元素都是列表框的一个列表项内容。
49、在界面设计时,利用List属性可以输入列表项目,在代码中可以引用该数组。(5)Sorted属性属性确定列表项是否按升序排列,是逻辑型,通过属性窗口设置。设置为True表示按升序排列列表项目,否则按增加先后次序排列。(6)Sorted属性属性确定列表项是否按升序排列,是逻辑型,通过属性窗口设置。设置为True表示按升序排列列表项目,否则按增加先后次序排列。2022-7-25(7)MultiSelect属性属性确定是否一次可选择多个列表项,是整型,通过属性窗口设置。可取值0、1和2,0表示每次只能选择一项;1表示简单多项选择,一次可以选择多项;2表示扩展多项选择,按下Ctrl 或Shift键+鼠标
50、单击,一次可以选择多项。(8)Selected属性属性在支持多项选择中,判断被选择的列表项。是逻辑型数组,在设计阶段不可用,当数组元素为True时,表示该项被选择,为False时,表示该项未被选择。(9)名称和其他属性名称和其他属性2022-7-25列表框的事件和方法列表框的事件和方法1列表框的事件列表框控接收Click事件、DblClick事件和LostFocus等事件,但大多数程序编写DblClick事件过程。2.列表框的方法列表框可以使用的方法有AddItem、RemoveItem和Clear。利用它们可以在程序运行期间修改列表框的内容。2022-7-25组合框是具有文本框控件与列表框控