第八章过程8.1过程概述在VB5.0/6.0中,除了系统提供的内部函数过程和事件过程外,用户可自定义过程下列四种过程:▲“Sub”保留字开始的为子过程▲“Function”保留字开始的为函数过程“Property”保留字开始的为属性过程“Event”保留字开始的事件过程在VB中,的Sub子过程分为:事件过程和通用过程8.2.1事件过程(1)窗体事件的语法PrivateSubForm_事件名(参数列表)<语句组>EndSub(2)控件事件的语法PrivateSub控件名_事件名(参数列表)<语句组>EndSub8.2Sub过程子过程的定义形式如下:[Public|Private][Static]Sub子过程名([形参表])<局部变量或常数定义><语句组>[ExitSub]<语句组>EndSub8.2.2通用过程(Sub过程)的定义说明:(1)子过程名:命名规则与变量名规则相同。子过程名不返回值,而是通过形参与实参的传递得到结果,调用时可返回多个值。(2)形式参数列表:形式参数通常简称“形参”,仅表示形参的类型、个数、位置,定义时是无值的,只有在过程被调用时,虚实参结合后才获得相应的值。(3)过程可以无形式参数,但括号不能省。(4)参数的定义形式:[ByVal|ByRef]变量名[()][As类型][,…],ByVal表示当该过程被调用时,参数是按值传递的;缺省或ByRef表示当该过程被调用时,参数是按地址传递的。例8.1编一个交换两个整型变量值的子过程。PrivateSubSwap(XAsInteger,YAsInteger)DimtempAsIntegerTemp=X:X=Y:Y=TempEndSub8.2.3子过程的建立通过“工具”菜单中的“添加过程”命令,出现“添加过程”对话框(见图6.1),选择过程类型(子过程、函数、属性、事件)及作用范围(公有的Public、私有的Private),单击确定后得到一个过程或函数定义的结构框架(模板),如:PublicSubSort()……EndSub8.2.4过程的调用1子过程的调用子过程名[参数列表]或Call子过程名(参数列表)说明:(1)参数列表称为实参或实元,它必须与形参保持个数相同,位置与类型一一对应。(2)调用时把实参值传递给对应的形参。其中值传递(形参前有ByVal说明)时实参的值不随形参的值变化而改变。而地址传递时实参的值随形参值的改变而改变。(3)当参数是数组时,形参与实参在参数声明时应省略其维数,但括号不能省。(4)调用子过程的形式有两种,用Call关键字时,实参必须加圆括号括起,反之则实参之间用“,”分隔。例:调用上面定义的Swap子过程的形式:Swapa,bCallSwap(a,b)PrivateSubCmdOK()……CallSwap(a,b)……Swapa,bEndSubPrivateSubSwap(x%,y...