待ち時間

Private Sub sWaitTime(ByVal st As Long)
'指定の時間待つ(1/1000 秒単位で指定)
Dim lngSt As Long
'システム起動後のミリ秒単位の経過時間を取得します。
'システムが 24.9 日間稼動し続けた場合、この経過時間は 0 に戻ります。
lngSt = System.Environment.TickCount
Do While System.Environment.TickCount - lngSt < st
'メッセージ キューに現在ある Windows メッセージをすべて処理します
Application.DoEvents() 'こちらだけではCPUの使用率が100%になる
'指定した時間だけ現在のスレッドを中断します。
System.Threading.Thread.Sleep(5) 'これだけでは他の処理を受け付けない
Loop
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click

Label1.Text = "開始"

Call sWaitTime(5000)

Label1.Text = "終了"

End Sub