★初心者にVisual C++を教えるスレ★ Part22
■ このスレッドは過去ログ倉庫に格納されています
0807デフォルトの名無しさん
2006/02/13(月) 17:33:30レスありがとうございます。
タイマー用のスレッドってどういったものなんでしょうか?
settimerなど使用すればkillするまで、一定時間ごとにメッセージを投げてくれる。
メッセージはOnTimerで自動的に受け取れるという感じだと思うんですが
スレッドで実際やるとしたら…
void Chogehoge::OnOK()
{ 〜前処理〜
AfxBeginThread( TimerThrd, this, THREAD_PRIORITY_NORMAL);
}
UINT Chogehoge::TimerThrd ( void * ){
settimer(1,100,0 ); //?????
}
void CProtDlg::OnTimer(UINT nIDEvent)
{ 〜処理〜
}
これじゃ変わってませんよね…orz
どうすればいいんでしょう?
早めにまわして・・・
void CProtDlg::OnTimer(UINT nIDEvent)
{
SYSTEMTIME st; // 現在時刻
GetLocalTime(&st); // 現在時刻取得
if ( m_mill != ( st.wMilliseconds / 100 ) ){
〜処理〜
m_mill = st.wMilliseconds / 100;
}
}
# m_millはメンバ変数
これだと処理が重くなりますし…。
■ このスレッドは過去ログ倉庫に格納されています