private sub form_queryunload(cancel as integer)
if msgbox("Sure to close?",vbyesno)=vbno then
cancel=true
else
cancel=false
endif
if msgbox("Sure to close?",vbyesno)=vbno then
cancel=true
else
cancel=false
endif
解决方案 »
- 在资源里加入一个RAR压缩包后,生成的EXE可以用WINRAR直接解压出来?
- MSHFlexGrid 数据更新,SQL形式。
- vb中怎样把已在Datagrid中数据导入EXCELL中
- 请问高手:如何拷贝gif图片到剪切板当中?
- 怎么给程序加启动参数?
- 谁开发过收取hotmail、yahoo等webmail的程序,有源码最好
- 高手高手快进来,我有难题请解答
- 求教高手:有没有办法,将vb调用的dll作为资源插入到编译后的exe中,如何操作!
- 请问怎么在datagrid 的单元格里面怎么添加一个下拉列表,就是在单元格里面一点就可以出现一个下拉列表,里面存放里不同的数据
- api函数sleep如何使用,谁能具体说明?
- 如何控制两个以上光驱
- 怎样写,最简单--实现单词分析功能?
yes = MsgBox("真的要退出吗?", vbYesNo, "标题")
If yes = 6 Then cancel=true
end sub
如 Unload me 。
Form2.Show
Form2.BackColor = QBColor(9)
End Sub
嘿嘿,声明正确的是这样:
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)End Sub
End Sub
'如果不想点X退出,但可以通过Unload方法关闭窗体
if unloadMOde<>vbformcode then
cancel=1
‘同时可以隐藏
me.hide
end ifEnd Sub
要Disable Form "X" --> Close的功能(变暗灰色),事实上便是从Form左上方的System
Menu将关闭(Close)的MenuItem去除掉便可以了,去除後,又该如何Enable "X"呢,那
便是再将 关闭(Close)的MenuItem加回去,但这里有个小问题,加回去之後"X"仍是暗
灰色,要等到我们做了某些固定的动作之後(如TitleBar上click一下,或选一下System
Menu等),它才会再度变Enable的颜色,我不知道让TitleBar上的这些东西Refresh要送
什麽讯息,知道者请告诉我,所以现在我暂且Send一个在TitleBar上按下Mouse左键的讯
息给Form,令"X"能出现Enable的颜色。'需一个Command Button
Private Declare Function GetSystemMenu Lib "User32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "User32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private 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
Private 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
Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongConst WM_NCLBUTTONDBLCLK = &HA3
Const WM_NCLBUTTONDOWN = &HA1
Const HTCAPTION = 2
Const MF_STRING = &H0&
Const MF_BYCOMMAND = &H0&
Const SC_CLOSE = &HF060Private hMenu As Long
Private CloseStr As String '记录Close MenuItem的字串'将"关闭"的那一个MenuItem 加回来
Private Sub Command1_Click()
Call AppendMenu(hMenu, MF_STRING, SC_CLOSE, CloseStr)'令"X"能出现Enable的颜色
Call SendMessage(hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
End SubPrivate Sub Form_Load()
hMenu = GetSystemMenu(Me.hwnd, 0)
CloseStr = String(255, 0)'SC_CLOSE指的便是"关闭"的那一个MenuItem ID
Call GetMenuString(hMenu, SC_CLOSE, CloseStr, 256, MF_BYCOMMAND)
CloseStr = Left(CloseStr, InStr(1, CloseStr, Chr(0)) - 1)Call DeleteMenu(hMenu, SC_CLOSE, MF_BYCOMMAND)
End Sub
Private Sub Form_Unload(Cancel As Integer)End Sub
直接写代码啊!