NonSoft

画面が固まらないスリープのサンプル(VB6)

 サンプルソース
<このサンプルの概要>
スリープ用のAPI(Sleep)をそのまま呼び出すと、画面が固まってしまうので、
Sleepの合間にDoEventsを入れると画面が固まらなくなります。Sleep
を使わずTimerコントロールでタイミングを計るべきなのかもしれませんが。。。
Sleepでタイミングを計る方がプログラムが分かりやすくなる事が多いです。

' スリープ用のAPI---------------------------------------------------------
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
' ------------------------------------------------------------------------
'
' 関数名    : SleepDoEvents
' 返り値    : 無し
' 引き数    : mSec(i) : スリープ時間(ミリ秒)
' 機能説明  : 画面が固まらないスリープ
'
Public Sub SleepDoEvents(ByVal mSec As Long)
    Dim i As Long
    For i = 0 To mSec - 1 Step 100
        Sleep 100
        DoEvents
    Next i
End Sub