Dim msg
msg = MsgBox("您确定要退出吗?", vbYesNoCancel + vbCritical)
If msg = vbYes Then
'可以在此添加代码
ElseIf msg = vbNo Then
'可以在此添加代码
Else
Cancel = True
End If
msg = MsgBox("您确定要退出吗?", vbYesNoCancel + vbCritical)
If msg = vbYes Then
'可以在此添加代码
ElseIf msg = vbNo Then
'可以在此添加代码
Else
Cancel = True
End If
If UnloadMode = 0 Then MsgBox "关闭"
End Sub
Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long
Declare Function GetMenuString Lib "user32" Alias "GetMenuStringA" (ByVal hMenu As Long, ByVal wIDItem As Long, ByVal lpString As String, ByVal nMaxCount As Long, ByVal wFlag As Long) As Long
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private hMenu As Long
Private CloseStr As String
Const WM_NCLBUTTONDBLCLK = &HA3
Const WM_NCLBUTTONDOWN = &HA1
Const HTCAPTION = 2
Const MF_STRING = &H0&
Const MF_BYCOMMAND = &H0&
Const SC_CLOSE = &HF060
Private Sub Command2_Click()
hMenu = GetSystemMenu(Form1.hwnd, 0)
CloseStr = String(255, 0)
GetMenuString hMenu, SC_CLOSE, CloseStr, 256, MF_BYCOMMAND
CloseStr = Left(CloseStr, InStr(1, CloseStr, Chr(0)) - 1)
DeleteMenu hMenu, SC_CLOSE, MF_BYCOMMAND
SendMessage hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub
Dim MyExit As String
MyExit = MsgBox("您真的想窗体吗?!", vbOKCancel + vbQuestion, "退出系统")
If MyExit = vbOK Then
End
Else
Cancel = 1
UnloadMode = 1
End If
End Sub