文档介绍:第
7
过程
本章主要内容
通用过程
Sub过程/Function过程
参数传递
过程的嵌套与递归调用
变量的作用范围
多窗体与Sub Main过程
程序举例
第7章过程
VB应用程序是由过程组成的,过程是完成某种特殊功能的一组独立的程序代码。两大类过程。
事件过程
Sub过程
通用过程 Function过程
事件过程是当某个事件发生时,对该事件作出响应的程序段,它是VB应用程序的主体
通用过程是独立于事件过程之外,可供其他过程调用的程序段
过程调用示例
把相同的任务编成相对独立的“子过程”
当事件过程需要执行这个任务时,可使用调用语句(如Call)实行调用。子过程执行完后,会返回事件过程中调用语句Call的后续语句继续执行
通用过程又分为Sub(子程序)过程和Function(函数)过程
调用过程
……
Call SubA
……
Call SubA
……
Call SubB
……
子过程SubA
子过程SubB
通用过程
使用Sub过程的示例1
Private Sub Form_Load()
Show
Call mysub1(30)
Call mysub2
Call mysub2
Call mysub2
Call mysub1(30)
End Sub
程序运行结果
Private Sub mysub1(n)
Print String(n, "*")
End Sub
Private Sub mysub2()
Print "*"; Tab(30); "*"
End Sub
Sub过程
Form_Load()
事件过程
Call mysub1(30)
Call mysub2
Call mysub2
Call mysub2
Call mysub2
Call mysub1(30)
Mysub1过程
Mysub2过程
调用过程
在上述事件过程Form_Load()中,通过Call来分别调用两个Sub过程
在Sub过程mysub1(n)中,n为参数(也称形参),当调用过程(即Form_Load())通过Call mysub1(30)(30称为实参)调用时,就把30传给n,这样调用后就输出30个“*”号
过程mysub2()不带参数,其功能是输出左右两边的“*”号
定义格式:[Private|Public | Static] Sub 过程名([参数表]) 语句块 [Exit Sub]End Sub
说明:
· 局部(Private)过程、全局(公用, Public)过程和静态(Static)过程
· 参数表定义格式:
[ByVal |ByRef] 变量名[( )][As 数据类型] …
ByVal表示该参数按值传递,ByRef表示该参数按地址传递
· 通过参数表传送参数
Sub过程可以获取调用过程传送的参数,也能通过参数表的参数,把计算结果传回给调用过程
1. Sub过程的定义
Sub过程可以保存在两种模块中:窗体模块(.frm)和标准模块(.bas)
可以在代码窗口中直接键入来创建Sub过程
选择“工具”菜单中的“添加过程”命令
2. Sub过程的建立
事件过程是通过事件驱动和由系统自动调用的,而Sub过程则必须通过调用语句实行调用
调用Sub过程有以下两种方法:
(1)使用Call语句。格式: Call 过程名([实参表])
(2)直接使用过程名,格式: 过程名[实参表]
例如,调用名为SubCal的过程: Call SubCal(10) SubCal 10
3. Sub过程的调用