PeekMessage()について

[戻る]
Jun 2002/05/22(水) 15:30:22
こんにちは。
いま、あるループ処理中でPeekMessage()使用して
WM_PAINTをチェックしています。

MSG msg;
while(あるフラグが真){
   ::SetDlgItemInt(hWnd, IDC_?????_STATIC, 表示する数値, FALSE);
   while(::PeekMessage(&msg,NULL,WM_PAINT,WM_PAINT,PM_NOREMOVE))
   {
    AfxGetThread()->PumpMessage();
   }
}

上記の様にWM_PAINTだけを処理しています。
この時、他のメッセージがキューに存在していた時は
処理しないで、キューから削除したいのです。
(あとで一気にメッセージが処理されるのを避ける為)
良い方法があったら教えてください。
よろしくお願い致します。

不良PG [E-Mail] 2002/05/22(水) 15:56:42
こうすれば良いのでは?

WM_PAINTを処理した後に

 MSG msg;
 while(::PeekMessage(&msg,NULL,0,0,PM_REMOVE))
 {
 }

Jun 2002/05/22(水) 16:55:37
[[解決]]
不良PGさんありがとうございます。
なるほど、そうですよね。

古いスレッドには追加発言できません。