是这样。
弹出一个MsgBox对话枢后,如果在用户1分钟内没有单击这个MsgBox。让这个
对话框自动消失。请问怎么实现.
弹出一个MsgBox对话枢后,如果在用户1分钟内没有单击这个MsgBox。让这个
对话框自动消失。请问怎么实现.
解决方案 »
- 请问VB中反正切 反余弦 反正弦的函数分别是什么
- 如何将access中ole中的excel表格放到word中?急!!!
- 怎样遍历HKEY_LOCAL_MACHINE\SOFTWARE\AUTODESK\AUTOCAD的所有子项的所有ACAD-*的子项,然后找到这个acadlocation的键值?
- 小问题,就是不懂
- 如果让我的程序第一个启动?
- 关于行和列……(在线)
- 100分,求教!!!!!!
- 在SQL SERVER7.0中如何在存储过程中创建一个表,其中表名由存储过程参数传入?
- 我有一个小问题 ,大家都进来看一看吧
- help about activereport
- vb 菜问
- 为什么启动vb6老是配置visual foxpro(以前装过,现卸载)?
Option ExplicitPrivate Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) 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 LongPrivate Const WM_CLOSE = &H10Private m_strMsgTitle As StringConst MB_DEFBUTTON1 = &H0&
Const MB_DEFBUTTON2 = &H100&
Const MB_DEFBUTTON3 = &H200&
Const MB_ICONASTERISK = &H40&
Const MB_ICONEXCLAMATION = &H30&
Const MB_ICONHAND = &H10&
Const MB_ICONINFORMATION = MB_ICONASTERISK
Const MB_ICONQUESTION = &H20&
Const MB_ICONSTOP = MB_ICONHAND
Const MB_OK = &H0&
Const MB_OKCANCEL = &H1&
Const MB_YESNO = &H4&
Const MB_YESNOCANCEL = &H3&
Const MB_ABORTRETRYIGNORE = &H2&
Const MB_RETRYCANCEL = &H5&Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As LongPrivate Sub cmdTest_Click()
With Timer1
.Interval = 2000
.Enabled = True
End With
Dim i As Integer
m_strMsgTitle = "OK"
MessageBox Me.hwnd, m_strMsgTitle, m_strMsgTitle, MB_OK
End SubPrivate Sub Timer1_Timer()
Dim hwnd As Long
Timer1.Enabled = False
hwnd = FindWindow(vbNullString, m_strMsgTitle)
Call SendMessage(hwnd, WM_CLOSE, 0, ByVal 0&)
End Sub
vbOKOnly 0 只显示 OK 按钮。
VbOKCancel 1 显示 OK 及 Cancel 按钮。
VbAbortRetryIgnore 2 显示 Abort、 Retry 及 Ignore 按钮。
VbYesNoCancel 3 显示 Yes、No 及 Cancel 按钮。
VbYesNo 4 显示 Yes 及 No 按钮。
VbRetryCancel 5 显示 Retry 及 Cancel 按钮。 为什么要特别提到 MsgBox 的常数呢?因为下面我们要告诉您的方法,还是有一点点限制的!当您设定的常数是 VbAbortRetryIgnore 或 VbYesNo 时,下面的方法也是没用的!'在表单的声明区中加入以下的声明Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) 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 LongPrivate Const WM_CLOSE = &H10
Private Const MsgTitle As String = "Test Message"'在表单中加入一个 CommandButton 及一个 Timer 控制项,加入以下程序码:Private Sub Command1_Click()
Dim nRet As Long
Timer1.Interval = 3000
Timer1.Enabled = True
nRet = MsgBox("若您不回应的话,3 秒后此 MsgBox 会自动关闭", 64, MsgTitle)
Timer1.Enabled = False
End SubPrivate Sub Timer1_Timer()
Dim hWnd As Long
hWnd = FindWindow(vbNullString, MsgTitle)
Call SendMessage(hWnd, WM_CLOSE, 0, ByVal 0&)
End Sub好了,很简单吧!您执行程序时,当 MsgBox 出现 3 秒之后,就会自动关闭了!注意:此方法的限制说明:1、当常数设定为 VbAbortRetryIgnore 或 VbYesNo 时,无效!
2、在 Design Time 时,无效,必须 Make EXE 之后才有效!
老兄,我又见到你了啊哈哈现在还在搞VB啊
楼上,你试试,当MSGBOX弹出来后,时间停止了
==================================
在ide里是会停止,但做成exe之后就不会了