首页计算机计算机软件VB程序设计 04 第4章 程序设计基础.pptx

04 第4章 程序设计基础.pptx

页数:40页文件大小:458.4 KB来源: VB程序设计ppt课件

本课件讲解顺序结构程序设计,先介绍赋值语句的格式与常见错误,再分别说明用InputBox函数、文本框输入数据的方法,用标签、文本框、MsgBox函数与Print方法输出数据的方式,并给出焦点、Tab函数与Spc函数等配套知识。

第4章 顺序结构程序设计章节封面,标示本章主题与所讲授的主要内容
过程与三种基本结构讲解页,说明HEnd的定义、调用与返回值处理
4.1赋值语句讲解页,说明其书写格式与使用要点
查看本课件的文字版(共 40 页,供检索与复制)

第1页:第4章 顺序结构程序设计

第4章 顺序结构程序设计

  • 数据输入
  • *数据输出
  • *注释、暂停与程序结束语句

第2页:过程与三种基本结构

过程与三种基本结构

事件驱动:将代码划分成一些“子过程”过程结构:过程内部代码由三种基本结构组成即:顺序结构、选择结构、循环结构顺序结构:执行过程的次序从上到下,从左到右例:

Private Sub Command1_Click() Const Pi = 3.14H = Val( Text1.Text) : R = Val( Text2.Text)Text3.Text = Pi * R ^ 2 * H End Sub

第3页:4.1赋值语句

4.1赋值语句

  • (1)<变量名>:应符合VB变量命名约定。
  • (2)<表达式>:常量、变量、表达式、属性。
  • (3)<对象名>:缺省时为当前窗体。
  • (4)赋值号“=”:与数学中的等号意义不同。例:X=X+1

第4页:赋值语句的使用注意

赋值语句的使用注意

(5)赋值号左边必须是变量或对象属性。例:X=1MyStr="Good Morning"Command1.Caption="确定"X+1=X'错误,赋值号左边是表达式Y=5'正确5=Y'错误,赋值号左边是常量(6)变量名或对象属性名的类型应与表达式类型相容。

类型相容:指变量名或对象属性名能够正确存取赋值号右边的表达式的值。

第5页:变量类型与赋值示例

变量类型与赋值示例

例:Dim A As Integer, B As SingleDim C As Double, S As StringA = 100'将整型数100赋给整型变量AS = "123.45"'将字符串"123.45"赋给变量SA = S'将数字字符串变量赋给整型变量,'变量A中存放123S = A' S中存放字符串"123"B = 12345.67A = B‘高单度变量赋值给整型变量,'先四舍五入后取整,A中存放12346C = 123456.789B = C'高精度变量赋值给低精度变量,'变量B中存放123456.8。

有效数字7位S = "abc"A = S'错误,类型不匹配

第6页:变量未赋值时的默认值

变量未赋值时的默认值

(7)变量未赋值时,数值型变量值为0,字符串变量值为空串""。(8)给可变类型的变量赋值后,变量的类型为赋值号右边表达式的类型。

例:执行下列各赋值语句后,A的数据类型是什么?(设A没有定义数据类型)A = 6 = 5A = 5 + 3A = "5+3"A = "#11/26/99#"A = #11/26/1999#A = Not 5 > 8可用TypeName函数显示变量的数据类型。

如:PrintTypeName(A)

第7页:【例4-1】交换两个变量的值

【例4-1】交换两个变量的值

【例4-1】设变量A中存放5,变量B中存放8,交换两个变量的值,使变量A中存放8,变量B中存放5。代码如下:A = 5B = 8C = AA = BB = CABCC=AA=BB=C

第8页:4.2数据输入

4.2数据输入

把要加工的初始数据从某种外部设备(例如键盘)输入到计算机中,并把处理结果输出到指定设备(如显示器),这是程序设计语言所应具备的基本部分。

赋值语句;输入框(InputBox);文本框(TextBox);……输入

第9页:4.2.1 用InputBox输入数据

4.2.1 用InputBox输入数据

  • <提示信息>:字符串表达式。可用Chr
  • (13)、Chr
  • (10)、Chr
  • (13) & Chr
  • (10)、vbCrLf换行。
  • <标题>:字符串表达式,省略时默认为应用程序名。
  • <默认值>:字符串表达式,省略时默认为空。
  • 返回值:字符串(在对话框中单击取消则返回"")

第10页:4.2.1 InputBox输入示例

4.2.1 InputBox输入示例

例:

Private Sub Form_Activate() Dim R As Single, AREA As SingleR = Val( InputBox(“请输入半径”,“计算面积”,“1”))AREA = 3.14 * R ^ 2 Print "R="; R; " AREA="; AREA End Sub单击“确定”,返回文本框中的文本到变量R中单击“取消”,返回一个零长度的字符串

第11页:用文本框输入数据

用文本框输入数据

时,也就是将文本框的Text属性的内容赋值给某个变量。例:将文本框Text1中输入的字符串赋给字符串变量Mystr

Dim MyStr As StringMyStr = Text1.Text例:将文本框Text1中输入的字符串作为数据赋给整型变量 Dim A As IntegerA =Val( Text1.Text)4.2.2用文本框(TextBox)输入数据

第12页:焦点的概念

焦点的概念

  • 运行时选择对象(鼠标、Tab键、访问键)
  • 在代码中使用SetFocus方法4.2.3焦点和Tab键序

第13页:对象何时失去焦点

对象何时失去焦点

  • 运行时用Tab键移动、用访问键或用鼠标单击选择另一个对象。
  • 在代码中对另一个对象使用SetFocus方法改变焦点。5.Tab键序
  • 指按Tab键时光标在各个控件之间移动的顺序。
  • 每个窗体都有自己的Tab键序。
  • 默认键序与控件的建立次序一致。
  • TabIndex属性:决定Tab键序改变TabIndex属性可以改变Tab键序
  • TabStop属性:决定是否能够使用TAB键将焦点移动到当前对象。

第14页:【例4-2】求三门课平均成绩

【例4-2】求三门课平均成绩

  • 单击“计算”按钮求平均成绩;
  • 当输入成绩的文本框获得焦点时,选中其中的文本;
  • 当输入成绩的文本框内容发生变化时,清除平均值;
  • 单击“清除”按钮清除所有内容,将焦点定位在Text1中;
  • 单击“退出”按钮结束程序的运行。Text4Text1Text2Text3Command1Command2Command3设Text4的Locked属性为True

第15页:①单击“计算”按钮求平均成绩Privat

①单击“计算”按钮求平均成绩Privat

e

Sub Command1_Click()A = Val( Text1.Text)B = Val( Text2.Text)C = Val(Text3.Text)Text4.Text = (A + B + C) / 3 End Sub

第16页:②当输入成绩的文本框获得焦点时,选中

②当输入成绩的文本框获得焦点时,选中

其中的文本

Private Sub Text1_GotFocus() Text1.SelStart= 0 Text1.SelLength= Len( Text1.Text) End Sub Private Sub Text2_GotFocus() Text2.SelStart = 0 Text2.SelLength = Len( Text2.Text) End Sub Private Sub Text3_GotFocus()Text3.SelStart = 0Text3.SelLength = Len(Text3.Text) End Sub

第17页:③当输入成绩的文本框内容发生变化时,清除

③当输入成绩的文本框内容发生变化时,清除

平均值

Private Sub Text1_Change()Text4.Text = "" End Sub Private Sub Text2_Change()Text4.Text = "" End Sub Private Sub Text3_Change()Text4.Text = "" End Sub

第18页:④单击“清除”按钮清除所有文本框的内容

④单击“清除”按钮清除所有文本框的内容

,并将焦点定位在文本框Text1中。

Private Sub Command2_Click() Text1.Text = "" Text2.Text = ""Text3.Text = ""Text4.Text = "" Text1.SetFocus End Sub⑤单击“退出”按钮结束程序的运行。 Private Sub Command3_Click()End End Sub

第19页:4.3数据输出

4.3数据输出

在程序设计中对输入的数据进行加工后,往往需要将处理结果、提示信息等呈现给用户,即输出。输出Print方法消息框(MsgBox)文本框标签……

第20页:用文本框输出数据

用文本框输出数据

时,也就是将数据赋给文本框的Text属性。例如输出一个字符串(或数值),输出多个字符串(或数值)例:用文本框Text1输出一个字符串Text1.Text = "hello"例:用文本框Text1输出一个数值型数据X = 3 ^ 5Text1.Text = Str(X)‘ Str可以省略或用Format例:用文本框Text1输出多个数,分多行输出。

首先将文本框的MultiLine设置为True,必要时可以进一步设滚动条属性ScrollBars。X = 3 ^ 5: Y = 7 ^ 4Text1.Text = Str(X) & vbCrLf & Str(Y)4.3.1用文本框(TextBox)输出数据

第21页:【例4-3】显示字母及其ASCII码

【例4-3】显示字母及其ASCII码

【例4-3】在Text1中输入任一英文字母,在Text2中显示该英文字母及其ASCII码值。要求在文本框Text2中显示出所有输入的英文字母及其ASCII码值。

Text1Text2Command1

第22页:【例4-3】的实现代码

【例4-3】的实现代码

Private Sub Command1_Click() Dim Char As String * 1Char = Trim( Text1.Text) Text2.Text = Text2.Text& Space(5) &Char& _Space(10) & Str(Asc(Char)) &vbCrLf Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len( Text1.Text) End SubChr(13) & Chr(10)

第23页:用标签Label输出数据

用标签Label输出数据

4.3.4用标签(Label)输出数据用标签输出数据时,也就是将数据赋给标签的Caption属性。也可以输出多个数据。例:用标签Label1输出一个字符串Label1.Caption = "hello"例:用标签Label1输出一个数值型数据X = 3 ^ 5Label1.Caption = Str(X)例:用标签Label1输出多个数,分多行输出。

通常要先设置标签的AutoSize属性和WordWrap属性为True。X = 3 ^ 5: y = 7 ^ 4Label1.Caption = "x=" & Str(X) & vbCrLf _& "y=" & Str(y)

第24页:【例4-4】用海伦公式求三角形面积

【例4-4】用海伦公式求三角形面积

  • 将文本框Text1、Text2、Text3的内容清空;
  • 设置三个文本框的Alignment属性为1-Right Justify;
  • 设置标签Label2的Caption属性为空;
  • 设置标签Label2的BorderStyle属性为1–Fixed Single。Text1Text2Text3Label2Command1

第25页:【例4-4】的代码实现

【例4-4】的代码实现

代码如下:

Private Sub Command1_Click() Dim A As Single, B As Single, C As Single Dim P As Single, S As SingleA = Val( Text1.Text)B = Val( Text2.Text)C = Val(Text3.Text)P = (A + B + C) / 2S = Sqr(P * (P-A) * (P-B) * (P-C))'显示时保留两位小数 Label2.Caption = Format(S, "0.00") End Sub

第26页:MsgBox函数的作用与格式

MsgBox函数的作用与格式

消息框常用于在屏幕上显示一个对话框,给出一些提示或警告信息,并允许用户进行选择。程序可根据该选择确定进一步的操作。

MsgBox函数的格式<变量>= MsgBox(<提示信息>[,<按钮类型>][,<标题>])或: MsgBox<提示信息>[,<按钮类型>][,<标题>]2.功能在对话框中显示消息,等待用户单击按钮,并返回一个整数告诉用户单击了哪个按钮。3.说明<提示信息>:字符串表达式。可用换行符换行。<按钮类型>:按钮类型+图标类型+默认按钮。P65<标题>:字符串表达式。返回值:由在对话框中按下哪种按钮决定。见P654.3.3用消息框( MsgBox)输出数据

第27页:MsgBox提示信息示例

MsgBox提示信息示例

例:<提示信息>

Private Sub Command1_Click() MsgBox "提示信息" End Sub例:<提示信息>换行 Private Sub Command1_Click() MsgBox "第一行" &Chr(13)& "第二行" End Sub

第28页:MsgBox对话框标题示例

MsgBox对话框标题示例

例:<对话框标题>

Private Sub Command1_Click()A = MsgBox("提示信息", , "标题内容") End Sub例:按钮类型—0到5或符号常量见P65 Private Sub Command1_Click()A = MsgBox("提示信息",1, "标题内容") End Sub

第29页:MsgBox图标类型示例

MsgBox图标类型示例

例:图标类型—16、32、48、64或符号常量见P65

Private Sub Command1_Click()A = MsgBox("提示信息",16, "标题内容") End Sub例:默认按钮—0,256,512见P58 Private Sub Command1_Click()a = MsgBox("提示信息", 2 + 256, "标题内容") Print a End Sub按回车打印4

第30页:MsgBox按钮与图标的组合

MsgBox按钮与图标的组合

不同的组合会得到不同的结果(第四类图标经常不用)。如: 16=0+16+0 type可写成“16”或“0+16+0”或用常数表示:vbokonly+vbcritical+vbdefautbutton135=3+32+050=2+48+0每个值常量都有对应的符号常量(系统常量),其作用与数值相同。

【注意】若某个数不能分解为2个或3个常数之和,该数按0处理处理,只显示确定图标。4.3.3用消息框(MsgBox)输出数据

第31页:用Print方法输出数据

用Print方法输出数据

4.3.4用Print方法输出数据1.Print方法格式:[<对象名>.]

Print [<表达式表>] [ { ; | , } ]<对象名>:窗体如 Form1. Print "Hello"图片框如 Picture1. Print "Hello"打印机如Printer. Print "Hello"立即窗口如Debug . Print "Hello"省略:默认为当前窗体。<表达式表>:多个表达式使用逗号或分号隔开。逗号:以14个字符位置为单位把一个输出行分成若干区段。分号:后一项紧跟前一项输出。

第32页:Print方法的输出格式

Print方法的输出格式

输出时,数值型数据前有一个符号位(正号不显),后面留一个空格位;字符串原样输出,前后无空格。

Private Sub Form_Activate() Print "12345678901234567890" Print "2+4=";2 + 4, Print "2-4="; Print 2-4 End Sub例: Private Sub Form_Activate() Print "12345678901234567890" Print "2+4=";2 + 4 Print "2-4=",2-4 End Sub

第33页:Print方法输出示例

Print方法输出示例

例:

Private Sub Form_Load() Form1. Show Print "12345678901234567890"Print'产生空行 Print "2+4=";2 + 4,Print'取消上面一句末尾逗号的作用 Print "2-4="; Print 2-4 End Sub输入Print时可用?代替,VB将其自动转换成Print

第34页:Tab函数与Spc函数

Tab函数与Spc函数

2.与Print方法有关的函数(1)Tab函数格式:Tab[(n)]功能:在指定的第n个位置上输出数据。参数n:n<当前位置:打印位置为下一行的第n列n<1:打印位置为第1列省略:打印位置为下一个打印区的起点(每14个字符为一个打印区)

第35页:Tab与Spc函数应用示例

Tab与Spc函数应用示例

例:

Private Sub Form_Activate() Print "12345678901234567890" Print "Hello";Tab(10); "World" Print "Hello";Tab; "World" Print "Hello";Tab(4); "World"PrintTab(-5); "Hello" End Sub

第36页:(2)Spc函数

(2)Spc函数

  • (3); "ABOUT"结果:HOW∪∪∪ABOUT注意:Spc函数与Space函数、Tab函数的区别
  • Space函数:可以用在字符串允许出现的任何位置。
  • Spc函数:只能用在打印语句中。
  • Tab函数指定绝对位置;Space函数或Spc函数指定相对位置。

第37页:4.4注释、暂停与程序结束语句

4.4注释、暂停与程序结束语句

1.注释语句格式:' |Rem<注释内容>功能:给语句或程序段加上注释,以提高可读性。说明:Rem与<注释内容>之间至少空一个空格。

Private Sub Form_Activate()Rem本程序用于计算圆的面积 Dim R As String, AREA As Single' R为半径R= InputBox("请输入半径", , "1"):Rem输入半径AREA = 3.14 * Val(R) ^ 2'以下将半径和面积输出到窗体上 Print Val(R), AREA End Sub

第38页:暂停语句Stop

暂停语句Stop

2.暂停语句格式:Stop功能:暂停程序的执行。用于程序调试。类似于执行“运行”菜单中的“中断”命令3.结束语句格式:End功能:结束程序的执行。

第39页:4.5应用举例

4.5应用举例

本部分内容要求自学,课外上机自行练习。P70例4-5P73练习[4-3]

第40页:第4章 小结

第4章 小结

本章小结:输入计算、处理:输出赋值语句文本框IntputBox函数赋值语句标签文本框Print语句MsgBox函数开始输入计算、处理输出结束顺序结构程序:

顶部目录