第 3章 第 三 章 顺 序 结 构 顺序结构 本章要点: Ø Print输出方法 Ø Input. Box输入函数 Ø Msg. Box函数和Msg. Box语句 1
Ø 结构化程序设计一般包括三种基本结构:顺序结 第 构、选择结构和循环结构。 三 章 Ø 顺序结构是按语句出现的先后顺序执行的结构。 顺 序 结 构 2
3. 1语句书写规则 第 三 章 顺 序 结 构 Ø (1)语句格式的符号规定 <> 尖括号;必选项。 [] 方括号;可选项。 | 竖线;用来分隔多个选择项,选其中之一项。 … 省略号;表示同类项目的重复出现。 例如:[<对象名>. ]Print [<表达式表>] 3
第 三 章 顺 序 结 构 Ø (2)每行通常写一条语句;若将几个语句写在一 行,语句间需要用冒号分隔; 例如:A=3:B=4 Ø (3)一个语句行不能超过1023个字符,如果太长, 可用 “_”续行; 例如:Form 1. print “I am a _ Student. ” 4
第 三 章 顺 序 结 构 Ø (4)与其他高级语言一样,在VB中使用的分号、 引号、括号等符号都是英文状态下的半角符号, 而不能使用中文状态下的全角符号。 例如: If a<5 Then x=10 Print "x="; x 不能写成 If a〈 5 Then x=10 Print “x=”;x 5
3. 2 赋值语句 第 三 章 顺 序 结 构 Ø 赋值语句是VB中使用最频繁的语句之一,常用于 为变量或对象的属性赋值。其格式为: 格式:[Let] <变量名>=<表达式> [〈对象名〉.]<属性名>=<表达式> 功能:首先计算赋值号右边表达式的值,然后,将 值赋予左边变量或对象属性。 6
(1)“=”左边为内存变量或对象的属性名 第 (2)赋值语句中符号“=”是赋值号,与数学中的等 三 章 号意义不同。 顺 序 例如:赋值语句a=b和b=c 表示两个结果不同的赋值 结 构 语句。 a=b ‘表示将变量b的值赋给a变量,赋值后,a和b 的值相同 b=a ‘表示将变量a的值赋给b变量,赋值后,b和a 的值相同 a=a+1 ‘表示将变量a的值加 1后再赋给a,a的值比赋 值前增加了1 7
第 三 章 顺 序 结 构 Ø (3)先计算表达式的值,然后将结果赋给“=” 左边的变量。 例如,语句V 1=V 1+20是要求将变量V 1单元中的 值取出,加上20后,再放回V 1变量所表示的存 储单元中。而程序段 V 2=”当前时间为:” Label 1. caption=V 2 & Time() 的运行结果是在Label 1上显示:“当前的时间为: 20: 45: 26” 8
第 三 章 顺 序 结 构 Ø (4)赋值号左边只能是变量,不能是常量、常 数符号或表达式。下面均为错误的赋值语句: x+y=3 ' 左边是表达式 5=sqr(s) ' 左边是常量 Ø (5)<表达式>可以是任何数据类型的,但“=”两 边的数据类型必须一致或相容。如果“=”两边的 数据类型不一致,则以“=”左边的数据类型为准。 相容类型的<表达式>结果,先转换为“=”左边的 数据类型后,再赋给左边的变量或某个对象的属 性。 9
第 三 章 顺 序 结 构 Ø (6)逻辑值赋给数值型变量时,True转化为-1。 False转化为 0;数值数据赋给逻辑变量时,非 0 转换成True, 0转换为False。 Ø (7)不能在一句赋值语句中,同时给多个变 量赋值。例如:x=y=z=1是不正确的。正确书 写应分别用三条赋值语句完成。z=1: y=z: x=z。 例如: Private Sub Form _ Click() Dim x As Integer , y As Integer x=y=5 Print x ‘输出结果为 0,先将(y=5)计算出 来,结果为False, 再赋给x。 End Sub 10
3. 3 Print输出方法 第 三 章 顺 序 结 构 Ø 格式 :[<对象名>. ] Print [<表达式表>] [ { ; | , } ] Ø 功能:首先计算各个表达式的值,然后,在指定 对象上按格式依次显示各个表达式的值。 Ø 说明: (1)对象名为:窗体(Form)、图片框( Picture. Box)和打印机(Printer) (2)分隔符为逗号(,)时,称为“标准格式”输出。 (3)分隔符为分号(;)时,称为“紧凑格式”输出。 (4)如果关键字Print后面没有任何输出项,则输 出一个空行,其作用为强制换行; 11
第 三 章 顺 序 结 构 例: Private Sub Form_Activate() Print "1234567890" Print "2+4="; 2 + 4 Print "2 -4=", 2 - 4 End Sub 例: Private Sub Form_Activate() Print "1234567890" Print "2+4="; 2 + 4, Print "2 -4="; Print 2 - 4 End Sub 12
第 三 章 顺 序 结 构 例: Private Sub Form_Load() Form 1. Show Print "1234567890" Print ' 产生空行 Print "2+4="; 2 + 4, Print ' 取消上面一句末尾逗号的作用 Print "2 -4="; Print 2 - 4 End Sub 输入Print时可用? 代替,VB将其自动转换成Print 13
3. 4 Input. Box输入函数 第 三 章 顺 序 结 构 Ø格式 Input. Box(prompt[, title] [, default] [, xpos] [, ypos] ) Ø功能 弹出一个对话框(如图所示),等待用户输入数 据,当用户按Enter键或单击“确定”按钮时,函 数将输入的内容以字符串返回。 14
例: Private Sub Form_Activate() Dim R As Single, AREA As Single 第 三 章 顺 序 结 构 R = Val(Input. Box(“请输入半径”, “计算面积”, “ 1”)) AREA = 3. 14 * R ^ 2 Print "R="; R; " AREA="; AREA End Sub 单击“确定”,返回文本框中的文本到变量R中 单击“取消”,返回一个零长度的字符串 15
第 三 章 顺 序 结 构 Ø 函数种参数的含义如下 (1)Prompt:必选项,字符串或字符串变量,用于表现出 现在对话框中的提示信息,最长 1024个字符,如上例中的 “您好,请输入学生人数:”。 (2)Title:可选项,字符串或字符串变量,用于表示对话 框内的标题信息,如上例中的“输入框”,若省略此项,则 用 程名作为对话框的标题。 (3)Default:可选项,字符串或字符串变量,用于设置输 入框的文本中的默认文本。如果省略此项,则对话框的输 入区是空白的,否则在对话框的输入区会显示该函数的内 容,并作为输入的默认值。如果用户不想使用这个默认字 符串作为输入值,可在输入区直接输入新的数据。 16
(4)xpos,ypos:可选项,整数值,用于设置输入 第 框与屏幕左边和上边的距离,单位为twip。若默 三 章 认,则对话框显示在屏幕中心线向下约三分之一 顺 序 处。这两个参数必须同时给出,或者全部省略。 结 构 17
3. 5 Msg. Box函数和Msg. Box语句 第 三 章 顺 序 结 构 1. Msg. Box函数 Ø与Windows风格相似,VB提供了一个可以显示提 示信息对话框的Msg. Box函数。此函数可以用对话框 的形式向用户输出信息,并根据用户的选择作出响 应。其格式为 Msg. Box(prompt[, buttons] [, title] [, helpfile, context]) Ø功能 根据参数建立一个对话框,显示提示信息, 同时将用户在对话框中的选择结果传输给程序。 18
第 三 章 顺 序 结 构 ØMsg. Box 函数的具有以下几个参数: (1)Prompt 必选项。字符串表达式或字符串变量,作 为显示在对话框中的消息。 (2)Buttons 可选的。数值表达式,是表 3. 1中按钮、图 标及模式对应数值的总和,指定显示按钮的数目及形式, 使用的图标样式,缺省按钮是什么以及消息框的强制回 应等。如果省略,则buttons 的缺省值为 0。 (3)Title 可选项。在对话框标题栏中显示的字符串表达 式。如果省略 title,则将应用程序名放在标题栏中。 (4)Helpfile可选项。字符串表达式,识别用来向对话框 提供上下文相关帮助的帮助文件。如果提供了 helpfile, 则也必须提供 context。 (5)Context可选项。数值表达式,由帮助文件的作者指 定给适当的帮助主题的帮助上下文编号。如果提供了 context,则也必须提供helpfile。 19
第 三 章 顺 序 结 构 2. Msg. Box语句 ØMsg. Box语句与Msg. Box函数的作用相似, 各参数的含义亦与Msg. Box函数形同,其格式 为 ØMsgbox <prompt>[, buttons][, title] [, helpfile, context]) Ø功能:弹出消息对话框,显示提示信息,同 时接收用户在对话框中的选择。 Ø执行Msg. Box语句后,会弹出一个对话框, 用户必须按回车键或单击对话框中的某个按钮, 才能继续进行后面的操作。与Msg. Box函数不 同的是,Msg. Box语句没有返回值,通常用来 显示较简单的信息。 20
第 三 章 顺 序 结 构 例: <提示信息> Private Sub Command 1_Click() Msg. Box "提示信息" End Sub 例: <提示信息>换行 Private Sub Command 1_Click() Msg. Box "第一行" & Chr(13) & "第二行" End Sub 21
第 三 章 顺 序 结 构 例: <对话框标题> Private Sub Command 1_Click() A = Msg. Box("提示信息", , "标题内容") End Sub 例: 按钮类型— 0到 5或符号常量 见P 65 Private Sub Command 1_Click() A = Msg. Box("提示信息", 1, "标题内容") End Sub 22
第 三 章 顺 序 结 构 例: 图标类型— 16、32、48、64或符号常量 见P 65 Private Sub Command 1_Click() A = Msg. Box("提示信息", 16, "标题内容") End Sub 例: 默认按钮— 0, 256, 512 见P 58 Private Sub Command 1_Click() a = Msg. Box("提示信息", 2 + 256, "标题内容") Print a End Sub 按回车打印 4 23
3. 6 注释、暂停及结束语句 第 三 章 顺 序 结 构 1. 注释语句 Ø 是非执行语句,通常用于给程序或语句进行注释,目的是 提高程序的可读性。另外注释不仅仅是对程序的注释,有 时它对于调试也非常有用,譬如说可以利用注释屏蔽一条 语句以观察变化,发现问题和错误。 Ø 格式为 Rem <注释内容> ‘<注释内容> 例: Private Sub Form_Activate() Rem 本程序用于计算圆的面积 Dim R As String, AREA As Single ' R为半径 R=Input. Box("请输入半径", , "1") : Rem 输入半径 AREA = 3. 14 * Val(R) ^ 2 '以下将半径和面积输出到窗体上 Print Val(R), AREA End Sub 24
第 三 章 顺 序 结 构 2. 暂停语句 格式: Stop 功能: 暂停程序的执行。用于程序调试。类似 于执行“运行”菜单中的“中断”命令 3. 结束语句 格式: End 功能:结束一个程序的运行,关闭打开的文件, 清除变量,返回操作系统或Visual Basic环境。 End语句提供的是一种强迫中止程序的方法。 End语句可以放在程序中的任何位置,执行到 End语句时将中断代码的执行。程序中也可以 没有End语句,这并不影响程序的运行。 25
3. 7 Label标签控件 第 三 章 顺 序 结 构 Ø 标签(Label)控件是VB中输出文本信息的常 用 具,主要用于在窗体上显示各种静态文字, 如标题、说明等,且仅用于显示文本。它所显 示的内容只能用Caption属性来设置或修改, 不能直接编辑。 Ø 1. 常用属性 Ø 2. 常用事件 26
1. 常用属性 第 三 章 顺 序 结 构 Ø (1)Alignment属性 该属性用来确定标签中文本对齐方式 格式:对象. Alignment[=常数/设置值] Ø (2)Auto. Size属性 该属性用来设置标签是否能够根据标题的内容自动调整大小 格式:对象. Auto. Size[=False/True] Ø (3)Border. Style属性 用来设置标签框的背景模式 Ø (4)Back. Style属性 该属性用来设置Lable控件和Shape控件的背景是透明的还是 非透明的。 格式:对象. Back. Style[=1/0] Ø (5)Caption 用来设置标签框中要显示的文本内容 27
第 三 章 顺 序 结 构 Ø (6)Enabled属性 用来设置标签框是否对用户的事件作出反应 Ø (7)Fore. Color、Back. Color Fore. Color属性用于设置标签的前景颜色(字体颜色) ,Back. Color属性用于设置标签的背景颜色 Ø (8)Font属性用于设置标签的字体 Ø (9)Height、Width、Top、Left 这四个属性用于设置控件的高度、控件的宽度、控 件离屏幕顶部的距离、控件离屏幕左边的距离 Ø (10)Word. Wrap属性 该属性用来设置标签是否可以在垂直方向上变化大 小以适应标题内容的大小 28 格式:对象. Word. Wrap[=False/True]
2. 常用事件 第 三 章 顺 序 结 构 Ø (1)Change事件 当标签的内容更改时触发Change事件 Ø (2)Click事件 单击事件,点击标签触发该事件 Ø (3)Dbclick事件 双击事件,双击标签时触发该事件 Ø (4)move方法 Move方法是标签控件的常用方法 格式:Move left, top, width, height 29
3. 8 Text. Box文本框控件 第 三 章 顺 序 结 构 Ø 文本框(Text. Box)是一个文本编辑区,用户可在 文本区输入、编辑、修改文本,也可以显示文本。 文本框的默认名称(Name)和Text属性缺省值为 Textx(x为编号,从1,2,…依次顺延)。文本 框的部分属性,如名称、Border. Style、Enabled、 Forecolor 、Font、 Height、Visible 、Width、 Top与 Left等属性与窗体及其他控件的属性相同。 Ø 1.文本框的常用属性 Ø 2.常用事件 Ø 3. 常用方法 30
1. 文本框的常用属性 第 三 章 顺 序 结 构 Ø (1)Locked属性 该属性用于设置文本框是否可编辑 格式:对象. Locked[=False/True] Ø (2)Maxlength属性 该属性用于设置文本中输入字符的长度 格式:对象. Maxlength[=数值] Ø (3)Multiline属性 该属性用于设置Text. Box种的文本能否换行 注意:Multiline和Scrollbars属性只能在设计时设置,不能 再运行时通过程序代码设置 Ø (4)Text属性 该属性用于显示文本框中的信息 格式:对象. Text[=字符串] 31
第 三 章 顺 序 结 构 Ø (5)Scrollbars 该属性用于设置Text. Box是否具有滚动条,并设置 滚动条的样式 注意:设置值为 1、2或 3有效的前提是Multiline属性 值必须设置为True;滚动条只在对象的内容超过 对象的边框时才被显示在对象上(可用)。 Ø (6)Password. Char属性 该属性用于设置用何种显示字符掩饰用户输入的字 符(常用于密码口令的输入) 格式:对象. Passxord. Char[=字符串] Ø (7)Tab. Stop属性 该属性用于设置文本框是否能够获得焦点 32 格式:对象. Tab. Stop[=True/False]
第 三 章 顺 序 结 构 Ø (8)Tab. Index属性 该属性用于返回或设置父窗体中大部分对象的Tab键次序 格式:对象. Tab. Index[=index] Ø (9)Sel. Start属性 Sel. Start是运行时属性,用于返回或设置焦点(光标 )在文 本框中文本的位置(文本的起始位置为 0) 格式:对象. Sel. Start[=数值表达式] Ø (10)Sel. Length属性 Sel. Length是运行时属性,用于返回或设置文本框中选择的 字符数 格式:对象. Sel. Length[=数值表达式] Ø (11)Sel. Text属性 Sel. Text是运行时属性,用于返回或设置文本框中所选择文本 的字符串 格式:对象. Sel. Text[=字符串表达式] 33
2. 常用事件 第 三 章 顺 序 结 构 Ø (1)Change事件 当用户向文本框中输入新的文本,或在程序运行中 对文本框的Text属性进行更改时,都将触发其 Change事件 Ø (2)Got. Focus事件 对象获得焦点事件 Ø (3)Lost. Focus事件 对象失去焦点事件 Ø (4)Key. Press事件 当焦点在当前文本框中,当用户按下并释放键盘上 某键时引发的Key. Press事件,在该事件发生的同 时,返回用户输入字符的ASCII码值(十进制) 34
3. 9 命令按钮控件 第 三 章 顺 序 结 构 Ø 命令按钮是VB应用程序中最常用的控件,它的 默认名称(Name)和标题(Caption)都为 Commandx(x为编号,从1,2,…依次顺延)。 在应用程序中,命令按钮主要用于运行某一个事 件过程。 Ø 1.文本框的常用属性 Ø 2.常用事件 35
1. 常用属性 第 三 章 顺 序 结 构 Ø (1)Caption属性 用于使用文字来标识命令按钮的功能,最多 255个字符 Ø (2)Default属性 用于设置第一个可执行的命令按钮,其缺省属性值为False 格式:对象. Default=True/False Ø (3)Cancel属性 该属性用于设置默认的第一个可执行的取消命令按钮,其缺 省属性值为False 格式:对象. Cancel=True/False Ø (4)Value属性 该属性在设计时可以通过属性窗口设置 格式:对象. Value=True/False 36
第 三 章 顺 序 结 构 Ø (5)Style属性 该属性用来设置命令按钮外观 Ø (6)Down. Picture属性 该属性在设计时可以通过属性窗口设置返回或设置 一个对图片的引用 格式:对象. Down. Picture[=图片] Ø (7)Disable. Picture属性 该属性在设计时可以通过属性窗口设置,用于返回 或设置一个对图片的引用 格式:对象. Disable. Picture[=图片] Ø (8)Tool. Tip. Text属性 该属性在设计时可以通过属性窗口设置,用于返回 或设置一个 具提示 格式:对象. Tool. Tip. Text[=字符串] 37
本章小结 第 三 章 顺 序 结 构 1. Print输出方法 [<对象名>. ] Print [<表达式表>] [ { ; | , } ] 2. Input. Box输入函数 Input. Box(prompt[, title] [, default] [, xpos] [, ypos] ) 3. Msg. Box函数和Msg. Box语句 Msg. Box(prompt[, buttons] [, title] [, helpfile, context]) 38