请教:MsgBox提示对话框问题

lifeng0731 2007-05-21 11:35:05
MsgBox提示对话框问题:
请问可不可以出现如下情况:
当出现提示框:不出现按钮的.
这样就不用鼠标点击按钮.
过一阵后,对话框就可以自动消失..

不过可不可以用MsgBox实现.
或者有没有其它实现的办法?
麻烦解答一下...
...全文
177 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
diclover 2007-05-22
  • 打赏
  • 举报
回复
这种效果自己设计比较好
cqq_chen 2007-05-22
  • 打赏
  • 举报
回复
自己写一个了。
guyehanxinlei 2007-05-22
  • 打赏
  • 举报
回复
用二楼的方法实现比较好。做一个模拟对话框,加一个TIMER控件
of123 2007-05-22
  • 打赏
  • 举报
回复
如何设定 MsgBox 在若干时间之后若无回应则自动关闭?

使用系统的 MsgBox 再加一个 Timer 就可以控制了。

'在窗体的声明区中加入以下的声明

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 Long

Private 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 Sub

Private Sub Timer1_Timer()
Dim hWnd As Long
hWnd = FindWindow(vbNullString, MsgTitle)
Call SendMessage(hWnd, WM_CLOSE, 0, ByVal 0&)
End Sub

注意:此方法的限制说明:

1、当常数设定为 VbAbortRetryIgnore 或 VbYesNo 时,无效!
2、在 Design Time 时,无效,必须 Make EXE 之后才有效!
jomakzhao 2007-05-22
  • 打赏
  • 举报
回复
2楼办法得解
会织网的蚂蚁 2007-05-22
  • 打赏
  • 举报
回复
可以,这要用到timer控件,然后把代码写到timer控件中。
yachong 2007-05-21
  • 打赏
  • 举报
回复
用窗体模拟
新建窗体Form2,设置BorderSytle=3
放一个标签,写上你的提示信息
放一个Timer,设置Interval为5秒

主窗体(Form1)代码:
Private Sub Command1_Click()
Form2.Show vbModal
End Sub

Form2代码:
Private Sub Timer1_Timer()
Unload Me
End Sub

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧