詳細(xì)查看了你的問題,完全不需要使用線程sleep的方法。
藍山ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
在這邊,我要給你引入一個概念。就是Form窗體的兩個方法。
Form.Show()和Form.ShowDialog()
第一個Show方法運行后,你的主程序還是會進行,你的代碼還是會繼續(xù)進行下去。此時,窗體還是彈出的。
第二個ShowDialog方法運行后,此時,彈出的一個窗體,你不將其關(guān)閉,那么,主程序就會一直等待這個窗體關(guān)閉后,才執(zhí)行后面的代碼。
所以,你只需要使用showdialog這個方法,即可達到你想要的結(jié)果。
那么,如何才能讓彈出的窗體不改變呢?很簡單
你可以找到窗體的formcloseing事件,在這個事件中,有一個參數(shù):e
這個e有一個屬性,就是e.handle,表示是否處理過這個事件了。
這個時候,如果你不想讓窗體關(guān)閉,你可以寫:
e.handle=true,那么表示已經(jīng)處理過窗體關(guān)閉的事件了。
注:有些情況,可能是:e.cancel=true
在程序代碼最上邊,加上Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
在想暫停的地方,運行Sleep 1000 '1000代表1秒
Private Sub Button1_Click()
MsgBox("A")
Threading.Thread.Sleep(3000)
MsgBox("B")
End Sub
如果暫停的3秒有影響,就給他開一個線程:
Private Sub Button1_Click()
Dim th As New Threading.Thread(AddressOf MsgBoxProc)
th.Start()
End Sub
Private Sub MsgBoxProc()
MsgBox("A")
Threading.Thread.Sleep(3000)
MsgBox("B")
End Sub
基本上沒這個功能,你可以自己搞一個。加個計時器控制就行了。
你應(yīng)該沒有加上API定義吧!你也可以從開始菜單中打開VB6工具中的api瀏覽器-文件-加載文本文件(把三個文本一個一個加載進去)-然后輸入sleep,就會出現(xiàn)這個函數(shù)!!
該API函數(shù)的定義如下:
Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
調(diào)用方法為:Sleep 5000 '停止5秒
可以利用Timer時鐘控件實現(xiàn),這樣做的好處是無需等待,釋放CPU時間去做別的事