先说说怎么退出这个无限循环,在代码中:
NOTE: CWnd::ContinueModal()函数检查对话框是否继续模式。返回TRUE,表示现在是模式的;返回FALSE,表示对话框已经不是模式(将要结束)。 如果要结束对话框,在内部最终会调用函数CWnd::EndModalLoop,它取消m_nFlags的模式标志(消息循环中的ContinueModal函数将返回FALSE,消息循环将结束,程序将退出);然后激发消息循环读取消息。也就是说,结束模式对话框是一个标志,改变这个标志就可以了。他的代码是:
NOTE: PostMessage(NULL)是有用的。如果消息队列中没有消息的话,可能消息循环中的ContinueModal()不会马上执行,发送一个空消息是激发消息循环马上工作。 下面说一下CWnd::RunModalLoop函数中的消息循环究竟干了些什么事情:
|
正在阅读:深入探讨MFC消息循环和消息泵深入探讨MFC消息循环和消息泵
2004-05-31 10:37
出处:CSDN
责任编辑:linjixiong
键盘也能翻页,试试“← →”键