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