说明:
在这个例子中,你设计一个如上图所示的介面。把第一个本文框 TextBox1 命名为 Txt_FirstNumber,把 第二个本文框TextBox1 命名为TextBox
Txt_SecondNumber。
插入一个命令按钮,标签为计算它。再插入一个标签,并将其命名为Lbl_Answer它来显示答案。如果用户输入0 进入如上所示的第二个TextBox,程序将跳转到标签error_handler,以及所执行的程序。这将在 Txt_Answer 标签显示出错误和在Lbl_ErrorMsg 标签错误的信息。
请注意 Exit Sub 关键字 ,它可以防止在用户在没有输入零进第二个TextBox程序代码时执行error_handler 。
最后,在信息出现错误后,用户将会点击文本框。当发生这种情况,该错误信息将从答案标签和错误信息的标签消失。这是通过使用GotFocus事件而达致,如代码所示。
范例28.1:除于零的错误
Private Sub CmdCalculate_Click()
Dim firstNum, secondNum As
Double
firstNum = Txt_FirstNumber.Text
secondNum = Txt_SecondNumber.Text
On Error GoTo error_handler
Lbl_Answer.Caption = firstNum / secondNum
Exit Sub
'To prevent error handling
even the inputs are valid
error_handler:
Lbl_Answer.Caption = "Error"
Lbl_ErrorMsg.Visible = True
Lbl_ErrorMsg.Caption = " You attempt to divide a number
by zero!Try again!"
End Sub
Private Sub Txt_FirstNumber_GotFocus()
Lbl_ErrorMsg.Visible =
False
End Sub
Private Sub
Txt_SecondNumber_GotFocus()
Lbl_ErrorMsg.Visible = False
End Sub