CWinThread::IsIdleMessage

virtual BOOL IsIdleMessage( MSG* pMsg );

Return Value

Nonzero if OnIdle should be called after processing message; otherwise 0.

Parameters

pMsg   Points to the current message being processed.

Remarks

Override this function to keep OnIdle from being called after specific messages are generated. The default implementation does not call OnIdle after redundant mouse messages and messages generated by blinking carets.

If an application has created a short timer, OnIdle will be called frequently, causing performance problems. To improve such an application’s performance, override IsIdleMessage in the application’s CWinApp-derived class to check for WM_TIMER messages as follows:

BOOL CMyApp::IsIdleMessage( MSG* pMsg )
{
   if (!CWinApp::IsIdleMessage( pMsg ) || 
       pMsg->message == WM_TIMER) 
      return FALSE;
   else
      return TRUE;
}

Handling WM_TIMER in this fashion will improve performance of applications that use short timers.

CWinThread OverviewClass MembersHierarchy Chart