《Visual Basic程序设计》电子教案 第6章

上传人:E**** 文档编号:89401418 上传时间:2019-05-24 格式:PPT 页数:17 大小:163.50KB
返回 下载 相关 举报
《Visual Basic程序设计》电子教案 第6章_第1页
第1页 / 共17页
《Visual Basic程序设计》电子教案 第6章_第2页
第2页 / 共17页
《Visual Basic程序设计》电子教案 第6章_第3页
第3页 / 共17页
《Visual Basic程序设计》电子教案 第6章_第4页
第4页 / 共17页
《Visual Basic程序设计》电子教案 第6章_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《《Visual Basic程序设计》电子教案 第6章》由会员分享,可在线阅读,更多相关《《Visual Basic程序设计》电子教案 第6章(17页珍藏版)》请在金锄头文库上搜索。

1、第6章 过 程,一、过程的定义 过程构成程序的一个基本单位 。实现某一特定功能或若干功能的代码段。 使用过程的两大优点: 便于调试 代码重用 Sub过程: 分为事件过程和通用过程。 区别:过程的调用方式不同。,1 、事件过程:由对象的事件所触发调用 说明:窗体的事件过程名由 Form_事件名 组合构成 控件的事件过程名由控件的 Name_事件名组合构成 例如: Private Sub Form_Load() End Sub Private Sub Command1_Click() End Sub,2、通用过程:存放多个程序需要共同使用的一段代码(公用代码) 创建: (1)直接输入过程头,按回车

2、后将自动出现过程尾格式: Private|PublicStatic Sub 过程名(形式参数表) 过程头 语句 过程体 End Sub 过程尾 说明: 可以使用Exit Sub退出; 不能嵌套定义,但可以调用其它过程。 (2)利用“工具/添加过程”命令,设置对话框即可。 然后在代码窗口中定义过程的参数,Function过程(也称为函数过程 ) 与Sub过程区别:Function过程带有返回值,定义时有返回值的类型说明。,可以在“代码窗口”直接定义 或“工具/添加过程”对话框中定义。然后在代码窗口中定义过程的参数,返回值类型 为了使函数过程返回结果,一般在函数过程中应有“函数名=表达式”这样的语

3、句,如省略,则数值函数返回0,字符串返回空字符串。 可以用Exit Function退出;,格式:Private|PublicStatic Function 函数名(形式参数) As 类型 函数名=表达式 语句 End Function 说明:函数的创建与通用过程的创建相似:用Function代替Sub;,二、过程的调用 1、在其它过程中调用通用过程 使用Call语句:Call 过程名 (实在参数) 使用过程名: 过程名 实在参数(注意:实参不能有圆括号) 例题:见下页 2、函数过程的调用:变量名 = 函数名(参数列表),例 把三个整数按从大到小的次序排列并显示出来,Public Sub so

4、rt(x As Integer, y As Integer) 通用过程 Dim Temp As Integer If x y Then Temp = x: x = y: y = Temp End If End Sub Private Sub Form_Click() Dim a As Integer, b As Integer, c As Integer a = 1: b = 3: c = 2 : Print a, b, c Call sort(a, b) 或 Sort a, b Call sort(a, c) 或 Sort a, c Call sort(b, c) 或 Sort b, c P

5、rint a, b, c End Sub,例 求n!,Function Fac(n As Integer) As Long 求n!的函数 Dim i As Integer, Temp As Long Temp = 1 For i = 1 To n Temp = Temp * i Next i Fac = Temp 把n !的值赋给函数名Fac End Function Private Sub Form_Click() Dim k As Integer, nj As Long k = 5 nj = Fac(k) 求5的阶乘 Print : Print k; “!=“; nj End Sub,三、

6、参数传递 1、形参与实参 如: 定义过程:sub testsub(r as integer,cc as string ) 调用过程:call testsub(18, rr),注:实参,形参变量名可不同,但个数必相同 实参书写顺序必须与相应形参的类型相符 2、按值传递参数 形式:参数前带有关键字ByVal 形参是实参的副本(形参的变动不影响实参)。 3、按地址传递参数 形式:参数前带有关键字ByRef或缺省 形参使用对应的实参的存储单元。显然,形参的变动将影响实参。,例 Private Sub Change1(ByVal x As Integer, ByVal y As Integer) Dim

7、 intTemp As Integer intTemp = x: x = y: y = intTemp Print “x=“; x, “y=“; y End Sub Private Sub Change2(x As Integer, y As Integer) Dim intTemp As Integer intTemp = x: x = y: y = intTemp Print “x=“; x, “y=“; y End Sub,按值传递参数,按地址传递参数,Private Sub Form_Click() Dim a As Integer, b As Integer a = 14: b =

8、23 Call Change1(a, b) 调用Change1过程 Print “a=“; a, “b=“; b Print Call Change2(a, b) 调用Change2过程 Print “a=“; a, “b=“; b End Sub,14,14,23,23,结果: x=23 y=14 a= b= x=23 y=14 a= b=,4、使用可选参数 在参数前加optional 指定参数可选 若指定了可选参数,则其后的参数也必是可选的,要加optional 5、使用不定数量的参数(可变参数) 一般,实参与形参个数相等,但可用ParamArray关键字使过程接受任意个数的参数。,四、变

9、量和过程的作用范围 p138图6-6 1、过程的作用域 (1)窗体/模块级过程 private (2)全局级过程 public 或缺省 如果在窗体模块 Form1 中包含 SomeSub 过程,则可使用下面的语句调用 Form1 中的过程: Call Form1.SomeSub(arguments),若在 Module1 中调用 Module2 中的 CommonName 过程,要用下面的语句: Module2.CommonName (arguments) 2、变量的作用域 过程级变量(局部变量)在其声明的过程内起作用 用Dim声明:变量值只在过程执行期间存在。 用Static声明:静态局部变

10、量,在整个应用程序运行时,其值一直存在 。,比较dim 和 static 例A: Private Sub Form_Click() Static intCount As Integer intCount = intCount+1 Print intCount End Sub 例B : Private Sub Form_Click() Dim intCount As Integer intCount = intCount+1 Print intCount End Sub,模块级变量在该模块的所有过程中起作用 在模块的“通用”声明段用Private或Dim语句声明。 全局变量在该工程的所有模块中起作用。例如,两个窗体使用同一变量,该变量必须声明为全局变量。 全局变量在模块的“通用”声明段用Public声明。,3、静态变量 static,作业:设计一个简易计算器,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号