国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
定時關(guān)閉MsgBox-未公開的API
定時關(guān)閉MsgBox-未公開的API
2010-08-09 16:10

本文轉(zhuǎn)自:http://www.vbafan.com/2010/06/24/undocumented-api-messageboxtimeout-vba/

      大家都知道,VBA中自帶的MsgBox不能自動關(guān)閉,某些特殊情況下需要在指定時間內(nèi)用戶沒有點擊消息框按鈕后能繼續(xù)運行代碼,需要用到定時關(guān)閉的消息框,之前的方法是使用Wscript.Shell的Popup方法,或者自定義窗體。
EH的ldy兄推薦了一個未公開的API可以實現(xiàn)定時關(guān)閉消息框,感覺十分有用。稍作修改,將wType參數(shù)改成可以提示輸入VBA的vbMsgboxStyle常數(shù)。
這個API函數(shù)的參數(shù)如下:

  • hwnd:窗口句柄,可以設(shè)為0
  • lpText:消息框顯示內(nèi)容,類似于MsgBox函數(shù)的第一個參數(shù)Prompt
  • lpCaption:消息框標(biāo)題,類似于MsgBox函數(shù)的第三個參數(shù)Caption
  • wType:消息框類型,類似于MsgBox函數(shù)的第二個參數(shù)Buttons
  • wlange:不是太明白這個參數(shù),0或者1都看不出什么差別
  • dwTimeout:延時時間,單位是毫秒

返回的值和vbMsgBoxResult常數(shù)一樣,多了一個返回值32000表示超過延時時間未選擇任何按鈕。


Private Declare Function MsgBoxEx Lib "user32" Alias "MessageBoxTimeoutA" ( _
ByVal hwnd As Long, _
ByVal lpText As String, _
ByVal lpCaption As String, _
ByVal wType As VbMsgBoxStyle, _
ByVal wlange As Long, _
ByVal dwTimeout As LongAs Long
Private Sub TestMsgboxEx()
Dim ret As Long
ret 
= MsgBoxEx(0"請選擇""兩秒后自動關(guān)閉", vbYesNo + vbInformation, 12000)
If ret = 32000 Then
Debug.Print 
"超時關(guān)閉"
ElseIf ret = vbYes Then
Debug.Print 
"選擇Yes"
ElseIf ret = vbNo Then
Debug.Print 
"選擇No"
End If
End Sub

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用messageboxtimeout api函數(shù)實現(xiàn)自動關(guān)閉的msgbox
VB api 中級
感悟VB細水長流話API(一)
自動上網(wǎng)抓數(shù)據(jù)的機器人
實例說明在VBA中如何使用Windows API
Visual Basic變態(tài)用法之函數(shù)指針
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服