收藏 分销(赏)

VB课件--ch.8.ppt

上传人:xrp****65 文档编号:13342856 上传时间:2026-03-04 格式:PPT 页数:17 大小:205KB 下载积分:10 金币
下载 相关 举报
VB课件--ch.8.ppt_第1页
第1页 / 共17页
VB课件--ch.8.ppt_第2页
第2页 / 共17页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,8,章 过程,本章教学目的,了解过程的基本概念及过程的分类,掌握过程的建立方法和调用方式,掌握过程参数的传递方式,了解变量的分类及变量的作用域,了解递归调用编程和数组作为参数的传递方法,本章主要内容,通用过程,过程的定义,;,建立过程,;,过程的调用,函数过程,函数的定义,;,函数的调用,参数的传递,按值传递,;,按地址传递,变量的作用域,全局变量,;,窗体,/,标准模块级变量,;,局部变量,;,静态变量,应用举例,8.1,通用过程,8.1.1,过程的定义,通用过程又叫,Sub,子过程,结构与事件过程类似。,通用过程的结构如下:,PrivatePublicStatic Sub,过程名(,参数列表,),局部变量和常数声明,语句块,Exit Sub,语句块,End Sub,其中:,(,1,),Private,和,Public,:,声明过程是局部的(私有的)还是全局的(共有 的),缺省为全局的,Public,。,(,2,),Static,:,表示局部静态变量。“静态”是指过程调用结束后仍保留过程的变量值。,(,3,)局部变量和常数声明:用来声明在过程中使用的变量和常数。,(,4,),Exit Sub,:,该语句使执行立即从过程中退出。,(,5,)语句块:过程执行的操作。,(,6,)参数列表:类似于变量声明,称为形式参数(简称形参)。从调用它 的过程传递来的参数值将传递给这个参数列表,多个形参之间用逗号隔开。形参的定义语法为:,ByVal,ByRef,形参变量名,As,数据类型,ByVal,表示该形参是按值传递,,ByRef,表示该形参是按地址传递。,(,7,),End Sub,:,用于结束本通用过程。,8.1.2,建立过程,创建通用过程的方法有以下两种。,第一种方法的操作步骤为:,(,1,)打开“查看代码”窗口。,(,2,)单击系统菜单,【,工具,】【,添加过程,】,命令弹出图,8.1,所示“添加过程”对话框。,(3),在“名称”框中输入要定义过程名,“类型”选项中选定过程的类型为“子过程”,“范围”选项中选定过程的作用域。,(,4,)单击,【,确定,】,按钮。这时在“查看代码”窗口创建了一个指定名称的通用过程模板。,图,8.1,添加过程,第二种方法的操作步骤为:,(,1,)打开“查看代码”窗口。,(,2,)在“对象列表框”中选择“通用”。,(,3,)在代码编辑区空白行输入:,Private Sub Warning(),,,并按回车键。,(,4,)在下一行自动出现“,End Sub”,。,通用过程模板建立成功。,8.1.3,过程的调用,一个通用过程和用户界面没有任何联系,要执行一个通用过程,需要一个事件过程去调用。有两种调用通用过程的方式。,1,Call,语句,语句格式为:,Call,通用过程名(,参数列表,),2,直接使用通用过程名调用,语句格式为:,通用过程名,参数列表,其中:,(,1,)参数列表:在调用语句中的参数称为实参,它和过程定义语句中的形参保持个数相同,位置和类型一一对应。调用时每个实参把它的值传递该对应的形参,这个过程称为参数传递。,(,2,)():使用,Call,语句调用过程时,如果被调用过程没有参数,则参数列表两边的“()”可以省略。,3.,举例,【,例,8.1】,在文本框(,Txtin,),中输入一个正整数,n,,,单击“运行”命令钮(,CmdRun,),后,通过过程调用计算前,n,个自然数的立方和,并在文本框(,txtout,),中显示结果。,操作过程,(,1,)建立工程,单击,【,程序,】【Microsoft Visual Basic 6.0,中文版,】【Microsoft Visual Basic 6.0,中文版,】,,然后在“新建工程”对话框窗口中选择“标准,EXE”,,,并单击“打开”命令按钮,建立一个名为“工程,1”,的新工程,并自动添加了一个空窗体“,Form1”,。,(,2,),建立对象,分别单击“工具箱”中的,TextBox,和,CommandButton,工具,在窗体中建立两个文本框对象和两个命令对象,如图,8.2,所示。,图,8.2,窗体设计界面,(,3,),设置对象属性,把两个文本框的,Text,属性设置为空,,Name,属性分别设置为,Txtin,和,Txtout,;,两个命令钮的,Caption,属性分别设置为“运行”和“结束”,,Name,属性分别设置为,CmdRun,和,CmdEnd,。,(,4,),建立事件过程,在,Form1,窗体中双击“执行”命令按钮打开代码(,Code,),窗口,在窗口上部左边下拉列表框中分别选择要创建事件过程的命令按钮,CmdRun,,,在右边下拉列表框中选择,Click,,,建立如下事件过程,:,Private Sub,CmdRun,_Click(),End Sub,Private Sub,CmdEnd,_Click(),End Sub,(5),添加程序代码,在事件过程中,输入相应程序代码如下:,Private Sub,CmdRun,_Click(),Dim n As Long,n=Val(,TxtIn,.Text),Call,zrsSum,(n),End Sub,Private Sub,zrsSum,(n As Long),Dim m As Long,I As Integer,For I=1 To n,m=m+I*I*I,Next I,TxtOut,.Text=m,End Sub,Private Sub,CmdEnd,_Click(),End,End Sub,(,6,),执行程序,在,VB,窗口中,选择“,【,运行,】【,启动,】”,,显示,Form1,窗体。在,Form1,窗体中第一个文本框中输入,4,,单击“执行”按钮,第二个文本框中显示程序运行结果,100,。运行结果画面如图,8.3,所示。,图,8.3 n,个自然数的立方和,8.2,函数过程,8.2.1,函数的定义,定义函数的语法如下:,Private|PublicStatic Function,函数名(,参数表,),As,数据类型,局部变量和常数声明,语句块,函数名,=,表达式,Exit Function,语句块,函数名,=,表达式,End Function,其中:,(,1,),As,数据类型:函数返回值的数据类型。省略该子句,函数返回值的数据类型为,Variant,。,(,2,),Exit Function,:,用于提前从函数过程中退出,用户退出函数过程之前,必须保证已为函数赋值,否则会出错。,(,3,)语句块:描述过程的操作语句,称为函数体。,(,4,)函数名,=,表达式:用该语句给函数赋值。,8.2.2,函数的调用,与调用,VB,内部函数的方法一样,在语句中直接使用函数名称作为表达式的一部分。最简单的调用方法是在赋值语句中调用函数过程。,变量名,=,函数过程(,参数列表,),【,例,8.2】,输入任意,3,条线段的长度,通过调用函数过程判断其是否可以构成一个三角形。,三条线段中任意两边长度之和大于第三边,则这三条线段就可以构成一个三角形,。,操作过程,(,1,)建立窗体,打开“工程,1”,,单击,【,工程,】【,添加窗体,】,,在窗体上添加空窗体,Form2,。,(,2,),建立对象、设置对象属性,在窗体上添加,3,个标签、,4,个文本框和,2,个命令钮。,3,个标签的,Caption,属性分别设置为“第一边长”“第二边长”和“第三边长”;,4,个文本框的,Text,属性设置为空,,Name,属性分别设置为,Txt1,、,Txt2,、,Txt3,和,TxtResu,,,文本框,Txt1,、,Txt2,和,Txt3,用来输入,3,个线段长度,,TxtResu,用于显示判断结果;,2,个命令钮,Caption,属性分别设置“运行”和“结束”,,Name,属性分别设置为,comRun,和,ComEnd,。,界面如图,8.4,所示。,(,3,)建立事件过程、添加程序代码,双击“运行”命令钮打开代码窗口,建立相应的事件过程,并添加程序代码如下:,Private Sub,comRun_Click,(),Dim m1 As Single,m2 As Single,m3 As Single,Dim,Resu,As Integer,m1=Val(Txt1.Text),m2=Val(Txt2.Text),m3=Val(Txt3.Text),Resu,=ThrAg(m1,m2,m3),If,Resu,=1 Then,TxtResu.Text,=,可以构成三角形,Else,TxtResu,.Text=,不能构成三角形,End If,End Sub,Private Function,ThrAg,(n1 As Single,n2 As Single,n3 As Single)As Integer,If n1+n2=n3 Then,ThrAg,=0,ElseIf,n1+n3=n2 Then,ThrAg,=0,ElseIf,n2+n3=n1 Then,ThrAg,=0,Else,ThrAg,=1,End If,End Function,Private Sub,ComEnd,_Click(),End,End Sub,(,4,),运行程序,在,VB,窗口中,设置“启动对象”为,Form2,。,然后选择“,【,运行,】【,启动,】”,,在窗体上面,3,个文本框中分别输入,4,、,5,和,6,,单击“执行”按钮,最下面文本框中显示运行结果“可以构成三角形”。运行结果画面如图,8.4,所示。,图,8.4,函数过程调用,8.3,参数的传递,在调用一个有参数的过程时,通过形参与实参的结合,把实参的值传递给形参,用传递获得的值执行调用的过程。数据传递有按值传递和按地址传递两种方式,。,8.3.1,按值传递,按值传递使用,ByVal,关键字。按值传递参数时,,VB,给形参分配一个临时内存单元,将实参的值传递给这个临时单元。被调用的过程在执行期间改变形参的值,只是改变了这个临时单元的值,不会影响实参本身的值。被调用的过程执行完毕返回调用它的主过程时,,VB,将释放分配给形参的临时单元。所以,按值传递是单向的。,8.3.2,按地址传递,按地址传递使用,ByRef,关键字。按地址传递参数时,,VB,把实参变量的内存地址传递给被调用过程的形参,使形参和实参具有相同的内存地址。被调用,的过程在执行期间改变形参的值,相应实参的值也随之一起改变。被调用的过程执行完毕返回调用它的主过程时,实参的值变为改变后的值。所以,按地址传递是双向的。,【,例,8.3】,通过函数调用计算,Fibonacci,数列,前,10,项之和。,操作过程,(,1,)建立对象、设置对象属性,在窗体上添加,1,个标签、,1,个文本框和,2,个命令钮。标签的,Caption,属性设置为“前,10,项的和是:”;文本框的,Text,属性设置为空,,Name,属性设置为,TxtResult,;,2,个命令钮的,Caption,属性分别设置“计算”和“结束”,,Name,属性分别设置为,CmdStart,和,ComEnd,。,界面如图,8.5,所示。,(,3,)建立事件过程、添加程序代码,双击“计算”命令钮打开代码窗口,建立相应的事件过程,并添加程序代码如下:,Private Sub,CmdEnd,_Click(),End,End Sub,Private Sub,CmdStart,_Click(),Dim n As Integer,i As Integer,Dim F(10)As Integer,F(0)=1:F(1)=2,For i=2 To 9,F(i)=F(i-2)+F(i-1),Next i,TxtResult,.Text=,FibSum,(F,10),End Sub,Private Function,FibSum,(,Fsum,()As Integer,ByVal,n As Integer)As Long,Dim i As Integer,For i=0 To n-1,FibSum,=,FibSum,+,Fsum,(i),Next I,End Function,运行结果画面如图,8.5,所示。,图,8.5,数组作为过程参数,8.4,变量的作用域,在声明了变量后,程序中就可以使用变量了。在,VB,中,根据作用域的不同,把变量分为局部变量、窗体,/,标准模块级变量和全局变量。,8.4.1,全局变量,全局变量的作用域是整个应用程序,只有整个应用程序运行结束时,全局变量才会消失。全局变量在声明处用,Public,语句定义。,定义的语法如下:,Public,变量名,As,数据类型,8.4.2,窗体,/,标准模块级变量,窗体,/,标准模块级变量对该窗体或标准模块的所有过程中都有效。该变量在该窗体或标准模块的“通用”声明处用,Dim,或,Private,语句声明。,定义的语法如下:,Dim,变量名,As,数据类型,Private,变量名,As,数据类型,8.4.3,局部变量,在过程内部用,Dim,声明的变量是局部变量。局部变量只能在声明它们的过程中才有效,其他过程不能以访问或改变它的值。,8.4.4,局部变量,静态变量是指在定义它的过程运行结束后,仍不释放其占用的内存单元,,保留其原值不变。,定义的语法如下:,Static,变量名,As,数据类型,本章小结,本章主要介绍了通用过程和函数过程的使用方法,同时介绍了过程调用中参数的传递方式和变量的作用域。,1,通用过程,定义通用过程的结构如下:,PrivatePublicStatic Sub,过程名(,参数列表,),局部变量和常数声明,语句块,Exit Sub,语句块,End Sub,有两种调用通用过程的方式,语句格式为:,Call,通用过程名(,参数列表,),通用过程名,参数列表,2,函数过程,定义函数的语法如下:,Private|PublicStatic Function,函数名(,参数表,),As,数据类型,局部变量和常数声明,语句块,函数名,=,表达式,Exit Function,语句块,函数名,=,表达式,End Function,函数的调用方法是在语句中直接使用函数名称作为表达式的一部分。最简单的调用方法是在赋值语句中调用函数过程。,3,参数传递方式,在调用一个有参数的过程时,通过形参与实参的结合,把实参的值传递给形参,用传递获得的值执行调用的过程。数据传递有按值传递,(,ByVal,),和按地址传,(,ByRef,),递两种方式。在定义过程时,如果没指定参数传递方式,缺省为,ByRef,。,4,变量的作用域,过程调用必然要使用到变量,在使用变量前,必须进行变量的声明。但变量有一个有效的范围,称为变量的作用域。在,VB,中,根据作用域的不同,把变量分为局部变量、窗体,/,标准模块级变量和全局变量,它们的定义关键字分别为,Dim,、,Pravite,/Dim,和,Public,。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服