[英]VB.Net Pause Code
我目前正在嘗試制作一個簡單的老虎機應用。 我正在嘗試使它像帶有旋轉器的傳統老虎機一樣,通過它並顯示不同的圖片。 我一直在嘗試使用在這里許多類似文章中發現的Sleep comand,但它總是使我的程序崩潰。 我測試的最后一個coe如下:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.Text = CStr(Int(Rnd() * 10)) 'pick numbers
Label2.Text = CStr(Int(Rnd() * 10))
Label3.Text = CStr(Int(Rnd() * 10))
Threading.Thread.Sleep(1000)
Label1.Text = CStr(Int(Rnd() * 10)) 'pick numbers
Label2.Text = CStr(Int(Rnd() * 10))
Label3.Text = CStr(Int(Rnd() * 10))
Threading.Thread.Sleep(1000)
Label1.Text = CStr(Int(Rnd() * 10)) 'pick numbers
Label2.Text = CStr(Int(Rnd() * 10))
Label3.Text = CStr(Int(Rnd() * 10))
Threading.Thread.Sleep(1000)
End Sub
任何人都可以對我需要更改的內容提出建議嗎? 我希望它彈出幾個不同的數字,然后每秒在它們之間切換。 感謝您的任何幫助,您可以提供
不要在UI線程上調用Sleep
。
當您的代碼在UI線程上運行時,UI無法更新。
因此,您的所有方法注定會失敗。
相反,請學習新的Async
語言功能並編寫
Await Task.Delay(1000)
您不需要聲明kernel32本機函數,因為Threading.Thread.Sleep()對托管代碼執行相同的操作。 后者是首選,實際上,您已經在事件處理程序中使用了什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.