MSND上说在OnIdel()内返回0,则不再调用
可是我的程序还是在调用.怎么回事?
可是我的程序还是在调用.怎么回事?
解决方案 »
- 结束一个对话框程序的方法
- 100分求VC视频捕获教程
- 内存膨胀!
- 请看看Release的警告信息是什么意思?程序可以运行。
- 类名为SysListView32 的窗口 对应于mfc中是什么类?
- 大家分析一下,这是不是微软的一个bug?
- OpenGL程序员请进:这里有一个超级难题,有那位能解决的,本人定送2600分
- 为什么我用MFC增加一个CListView后,当我编译时系统说基类“CListView"没有定义?急
- 如何往组合框Combobox填充一个文件夹的内容?又如何选择?
- 请教CString类中operator<<和operator>>的用法。。。
- 求助,UpdateRegistry函数报错
- 键盘过滤的问题
{
ASSERT_VALID(this); // for tracking the idle time state
BOOL bIdle = TRUE;
LONG lIdleCount = 0; // acquire and dispatch messages until a WM_QUIT message is received.
for (;;)
{
// phase1: check to see if we can do idle work
while (bIdle &&
!::PeekMessage(&m_msgCur, NULL, NULL, NULL, PM_NOREMOVE))
{
// call OnIdle while in bIdle state
if (!OnIdle(lIdleCount++)) //这里调用OnIdle虚函数
bIdle = FALSE; // assume "no idle" state
} // phase2: pump messages while available
do
{
// pump message, but quit on WM_QUIT
if (!PumpMessage())
return ExitInstance(); // reset "no idle" state after pumping "normal" message
if (IsIdleMessage(&m_msgCur))
{
bIdle = TRUE;
lIdleCount = 0;
} } while (::PeekMessage(&m_msgCur, NULL, NULL, NULL, PM_NOREMOVE));
} //无限循环,退出条件是收到WM_QUIT消息。 ASSERT(FALSE); // not reachable
}