vb语句汇总(4)

2019-08-30 18:59

见。 Name 必需的。该Enum类型的名称。Name必须是一个合法的VisualBasic标识符,在定义该Enum类型的变量或参数时用该名称来指定类型。 必需的。用于指定该Enum类型的组成元素名称的合法VisualBasic标识符。 Membername 可选的。元素的值为Long类型,也/可以是别的Enum类型。如果没有Constantexpression 指定Constantexpression,则第一个Membername的值为0,其余Membername的值为序列数,后一个总比其前一个的值大1。 二、说明:

用Enum类型定义的变量叫枚举变量,枚举变量只能在模块或窗体中定义,其中的元素被初始化为Enum语句中指定的常数值。所赋给的值可以包括正数和负数,且在运行时不能改变。

在编程时,经常遇到一些数据,即不直观也不容易记忆,如果采用枚举变量可以使编程简单化。例如颜色,为六位十六进制数,为了使用方便,VB将常用颜色定义成枚举变量,在各个颜色的英文单词前面冠以vb,用以代替六位十六进制数,红色为vbRed,绿色为vbGreen,蓝色为vbBlue等。

注意:不能在With块中使用Enum类型作为目标。 三、应用举例:

下面的示例显示用Enum语句定义一个颜色常数的集合。建立一标准工程,在窗体上添加两个命令按钮和两个文本框,将下面的程序粘贴过去。 Private Enum MyColors Color1 = &HFF6347 Color2 = &HFC870E Color3 = &HF9F400 Color4 = &H9400FA Color5 = &H8B3EE3 Color6 = &H8B69F0 End Enum

Private Sub Command1_Click() Text1.BackColor = Color1 Text2.BackColor = Color2 Form1.BackColor = Color3 End Sub

Private Sub Command2_Click() Text1.BackColor = Color4 Text2.BackColor = Color5 Form1.BackColor = Color6 End Sub

分别单击两个命令按钮,你可以看到窗体和两个文本框的背景色发生变化。

Erase

语句

描述:重新初始化大小固定的数组的元素,以及释放动态数组的存储空间。 一、语法: Erase arraylist

所需的arraylist参数是一个或多个用逗号隔开的需要清除的数组变量。 二、说明:

Erase根据是固定数组还是动态数组,来采取完全不同的行为。对于固定数组恢复内存。Erase按下表来设置固定数组的元素 数组类型 固定数值数组 固定字符串数组(长度可变) 固定字符串数组(长度固定) 固定Variant数组 用户定义类型的数组 对象数组 Erase对固定数组元素的影响 将每个元素设为0 将每个元素设为零长度字符串(\将每个元素设为0 将每个元素设为Empty 将每个元素作为单独的变量来设置 将每个元素设为特定值Nothing 对于动态数组,Erase释放动态数组所使用的内存。 其实对于我们来讲,不必知道Erase采取的行为。只需知道某一动态数组使用了Erase语句后,如果再次引用该动态数组之前,程序必须使用ReDim语句来重新定义该数组变量的维数。

三、应用举例:

该示例使用Erase语句释放动态数组存储空间,然后重新分配存储空间。 Dim DynamicArray() As Integer '声明动态数组。

ReDim DynamicArray(10) '定义动态数组的维数,并为其分配存储空间。 Erase DynamicArray '释放数组所用内存。

ReDim DynamicArray(5) '重新分配存储空间。

Error语句

描述:模拟错误的发生。 一、语法:

Error errornumber

必需的errornumber可以是任何有效的错误号。 二、说明:

在VB自带的函数里,也有一条Error函数。其含义是返回对应于已知错误号的错误信息,语法是Error[(errornumber)],errornumber为可选的。Error语句和Error函数在语法上的区别是:Error语句中的错误号是必需的,且不带小扩号;而Error函数中的错误号是可选的,且必须用小扩号扩起来。其结果也是不同的,用Error语句可以人为的产生一个错误;而调用Error函数则返回错误信息。 三、应用举例:

本示例使用Error语句来模拟发生错误代号11的状况。建立一标准工程,在窗体上添

加一命令按钮,将下面的程序粘贴过去。 Private Sub Command1_Click()

On Error Resume Next '发生错误后继续下一步 Error 11 '模拟\除以零\的错误

Debug.Print Err.Description '显示错误信息 End Sub

运行程序并单击按钮,我们可以在立即窗口如下的错误信息: Division by zero

Event语句

描述:定义用户自定义的事件。 一、语法:

[Public]Event procedurename[(arglist)] Event语句的语法包含下面部分: 部分 public 描述 可选的。指定该Event是全局的(公用的),在整个工程中都是可见的。缺省情况下Events类型是Public。应注意,事件只能在所声明的模块中产生。 procedurename 必需的。事件的名称;遵循标准的变量命名约定。 arglist参数的语法及语法的各个部分如下:

[ByVal|ByRef]varname[()][As type] 部分 byVal byRef 描述 可选的。表示该参数是按值传递的。 可选的,为缺省值。表示该参数是按地址传递的。 varname 必需的。代表要传递给过程的参数变量的名称;遵循标准的变量命名约定。 type 可选的。指传递给过程的参数的数据类型,可以是VB变量的各种类型、用户定义类型或对象类型,不支持定长的String。 二、说明:

这是一个高级话题,因为它涉及到了类模块的概念,而且由类模块产生事件,如果你不熟悉类的概念,就不要理它,因为这种情况不多见。

事件被声明之后,必须使用RaiseEvent语句才能激活该事件。 注意:

可以象声明过程的参数一样来声明事件的参数,但有以下不同:事件不能有带命名参数、Optional参数、或者ParamArray参数。事件没有返回值。 三、应用举例:

下面的示例是用事件来计算时间。建立一标准工程,在窗体(Form1)上添加一个命令按钮(Command1),两个标签(Label1)和(Label2)。第一个标签显示秒,第二个标签显示分。将下面的程序粘贴过去。

Option Explicit

Dim WithEvents TMR As TimerState '声明事件 Private Sub Command1_Click()

If Command1.Caption = \启动\ Command1.Caption = \停止\ TMR.StartCounting Else

Command1.Caption = \启动\ TMR.StopCounting End If End Sub

Private Sub Form_Load()

Set TMR = New TimerState Command1.Caption = \启动\ Label2.Caption = 0 Label1.Caption = 0 End Sub

Private Sub TMR_Sec(ByVal TimJump As Double) Label1.Caption = Str(Format(TimJump, \ DoEvents End Sub

Private Sub TMR_Minute() Label1.Caption = 0

Label2.Caption = Val(Label2.Caption) + 1 TMR.TimerTask (60) End Sub

建立一个类模块,改名为TimerState,将下面的程序粘贴过去。 Option Explicit

Dim Counting As Boolean

Event Sec(ByVal dblJump As Double) Event Minute()

Public Sub StartCounting() Counting = True TimerTask (60) End Sub

Public Sub StopCounting() Counting = False TimerTask (0) End Sub

Public Sub TimerTask(ByVal Duration As Double) Dim TimStart As Double Dim TimSecond As Double Dim TimSoFar As Double If Not Counting Then Exit Sub

TimStart = Timer TimSoFar = TimStart

Do While Timer < TimStart + Duration If Not Counting Then Exit Sub If Timer - TimSoFar >= 1 Then TimSoFar = TimSoFar + 1

RaiseEvent Sec(Timer - TimStart) '激活事件 End If Loop

RaiseEvent Minute End Sub

单击命令按钮后,第一个标签开始计时。每经过60秒之后,第二个标签则加一。如果再次单击命令按钮后,则停止计时。这个示例只是为了说明语句,在实际运行时将占用大量的时钟周期。

Exit语句

描述:提前退出控制结构、循环或过程的语句体。 一、语法: Exit Do Exit For

Exit Function Exit Property Exit Sub

Exit语句的语法包含下面部分: 部分 描述 在Do...Loop循环中使用,退出Do...Loop循环。当Exit Do用在嵌套的Do...Loop循环中时,Exit Do只能退出本层循环,即Exit Do所在的那层循环。 在For...Next或For Each...Next循环中,提供一种退出For循环的方法。当Exit For用在嵌套的For循环中时,Exit For只能退出本层循环。 在Function过程中,可以使用Exit Function退出过程。程序会从调用Function的语句之后的语句继续执行。 在Property过程中,可以使用Exit Property退出过程。程序会从调用Property过程的语句之后的语句继续执行。 在Sub过程中,可以使用Exit Sub退出过程。程序会从调用Sub过程的语句之后的语句继续执行。 Exit Do Exit For Exit Function Exit Property Exit Sub 二、说明:

不要将Exit语句与End语句搞混了。End语句结束一个结构;Exit只是退出一个结构。


vb语句汇总(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小草之歌

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: