掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
SetTimerを使用して一定時間後にコールバック関数を呼ぶには? (ID:71222)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
開発環境:VS2008 / MFC / VC++ です。 ある画面を持たないライブラリが、一定時間(1秒)後にメンバ変数であるBOOL値をFALSEに 変更したいのですが、SetTimerの使い方が分かりません。 void ClassName::FuncA() { SetTimer( NULL, 0, 1000, (TIMERPROC)TimerProc ); //第1引数:画面を持たないのでNULL //第2引数:第1引数がNULLの場合、意味を持たないらしいので0 //第3引数:1000ミリ秒でタイムアウト //第4引数:1000ミリ秒後に呼ばれるコールバック関数 } void CALLBACK ClassName::TimerProc( HWND hwnd , UINT msg, WPARAM wp, LPARAM lp ) { m_val = FALSE; //1秒後にメンバ変数をFALSEにする。 } 私の意図としては、FuncAでタイマをSetし、1秒経過後にコールバック関数のTimerProcが呼ばれて、 m_valにFALSEを代入するようにしたいのですが、下記のコンパイルエラーが出てしまいます。 「error C2440: '型キャスト' : 'overloaded-function' から 'TIMERPROC' に変換できません。」 どのようにすればよいでしょうか? もしくは、ほかに良い方法がありましたら、ご教授ください。 よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.