vb 异常处理

来源:百度知道 编辑:UC知道 时间:2024/05/24 10:15:44
我希望程序可以像word一样 ,当强行关闭时会出现一个对话框,问你是不是要储存信息,如果储存的话,按yes 就行的那种!就是按红色的小X的时候弹出小窗口! 希望有类似代码!

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If MsgBox("是否保存?", vbYesNo, "提示") = vbYes Then
'保存
Else
'不保存
End If
End Sub

sub ......(.........)
on error goto L
代码
.
.
.
L:
msgbox "出现错误" & err.number & vbcrlf & "错误描述:" & err.description
end sub

每段代码加上这个,除了系统崩溃那一类的错误,基本不会强行关闭了

Private Sub Form_Unload(Cancel As Integer)
Dim choice

choice = MsgBox("退出前是否要保存当前信息?" & Chr$(13) & Chr$(13) & "1.保存并退出" & Chr$(13) & "2.直接退出(不保存)" & Chr$(13) & "3.不退出", vbYesNoCancel, "退出提示")

Select Case choice
Case vbYes
'这里写保存信息的代码
Case vbCancel
'取消退出操作
Cancel = True
End Select
End Sub

错误处理
1 on error goto 标号:
2 on err