<Return[S]><Top>

SetTimer

Declare Function Api_SetTimer& Lib "user32" Alias "SetTimer" (ByVal hWnd&, ByVal nIDEvent&, ByVal uElapse&, ByVal lpTimerFunc&)

Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long

指定されたタイムアウト値を持つ 1 個のタイマを作成する。

パラメータ
hWnd
    タイマに関連付けるべきウィンドウのハンドルを指定する。このウィンドウは、呼び出し側のスレッドが所有しているものでなければならない。

    NULL を指定すると、どのウィンドウにも関連付けられていないタイマが作成され、nIDEvent パラメータは無視される。
nIDEvent
    タイマの識別子を指定する。hWnd パラメータで NULL を指定した場合、nIDEvent パラメータは無視される。
    hWnd パラメータで NULL 以外の値を指定し、hWnd パラメータで指定したウィンドウに、nIDEvent と同じ値のタイマが既に割り当てられ

    ている場合、新しいタイマは既存のタイマを置き換える。SetTimer 関数がタイマを置き換えた場合、そのタイマはリセットされる。

    したがって、現在のタイムアウト時間が経過すると 1 つのメッセージが送信されるが、それまでのタイムアウト時間は無視される。
uElapse
    タイムアウト値を、ミリ秒(ms)単位で指定する。
lpTimerFunc
    uElapse パラメータで指定したタイムアウト時間が経過した時点で呼び出される、1 個の関数へのポインタを指定する。

    NULL を指定すると、システムは 1 個の WM_TIMER メッセージをアプリケーションキューにポストする。

    このとき、メッセージ内の MSG 構造体の hwnd メンバに、この関数の hWnd パラメータで指定したハンドルが格納される。

戻り値
    関数が成功すると、新しいタイマの識別子を表す整数が返る。アプリケーションはタイマを破棄する目的で、KillTimer 関数に、この値、

    または存在する場合は文字列による識別子を渡せる。
    関数がタイマの作成に失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。