|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
当应用程序在VB环境中运行时,遇到错误将终止程序运行,返回到VB环境,当应用程序被编译成EXE文件,在WINDOWS环境中运行时,一旦发生错误,WINDOWS将终止应用程序的执行,并将控制权交还给WINDOWS系统,显然,这种处理方法不是所希望的。一般应用程序都会在运行时捕捉到错误,并且给出提示,以便让用户采取行动。 在VB中,要增加应用程序的处理的能力,需要做以下两步工作:
VB提供了On Error语句设置为错误陷阱,捕捉错误,On Error语句有3种形式: On Error Goto语句标号:在发生运行错误时,转到语句标号所指定的程序块执行错误处理程序,指定的必须在同一过程中,错误处理程序的最后必须加上Resume,以告知返回位置。 On Error Resume Next:在发生运行错误时,忽然错误,转到发生错误的下一条语句继续运行。 On Error Goto 0:停止错误捕捉,有VB直接处理运行错误。 Resume语句应放置在出错处理程序的最后,以便错误处理完毕后,指定程序下一步做什么。Resume也有3种形式。 Resume 标号:返回到标号指定的行继续执行,若标号为0,则表示终止程序执行。 Resume Next:跳过出错语句,返回到出错的下一条语句继续执行。 Resume:返回到出错语句处重新执行。 在On Error语句捕捉到错误以后,Err对象的Number属性返回错误的代号,通过错误代号即可知道引发错误的原因了.在编写错误处理程序时,一般使用"If Err.Number"语句或“Select Case Err.Number"语句来判断错误的类型.
VB提供的Error函数用语返回错误信息,其语法如下:
例如:Form.Print.Error(11) 这里编写一个用于计算两个数相除的小程序。如果用户输入的除数为零,会弹出消息框提示用户;如果没有输入除数或被除数,也会弹出消息框提示用户。 在窗体上放置5个标签3个文本框和一个按钮控件,其中各对象的属性设置如下: 运行程序,输入被除数与除数,单击[结果]按钮,就会计算出它们的商。如果法输入的除数为零,则弹出如图所示的消息框,提示用户出错。
Private Sub Command1_Click()
运行程序,输入被除数和除数,单击结果计算我们的商。如果输入的除数是0弹出如图消息框,要求用户重新输入。
如果没有输入除数,则会弹出如图消息框,提示用户出错。
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
| |