在WM_PAINT处理函数OnPaint()中未构造CPaintDC对象造成死循环
来源:互联网 发布:在淘宝闲鱼交易安全吗 编辑:程序博客网 时间:2024/06/07 15:32
在程序中动态创建了一个基类为CWnd的窗口,由于VC不知怎么回事添加不了消息处理,所以就自已增加了WM_PAINT消息映射,悲剧发生了,一运行就死循环,调试知不断的调用了OnPaint()函数,把OnPaint()函数缩减就几行代码还是看不出有什么漏洞的。
这个问题检查了一早上差点无果,突然想起来以前在用C写windows程序的时候,处理WM_PAINT消息时有beginpaint() 和endpaint()的调用,作用是通知程序无效区已经有效等,如果不调用系统将不断的发送WM_PAINt消息,回来代码一眼看到第一行代码:CClientDC dc(this),,暗自高兴了一下,原来是我构造错对象了,应该构造CPaintDC对象,这个对象在构造函数中会调用beginpaint,在析构的时候会调用endpaint,这样无效区就会恢复有效。而CClientDC没有这个功能。
有时越是简单的问题获是不容易查出啊。
- 在WM_PAINT处理函数OnPaint()中未构造CPaintDC对象造成死循环
- Scanner在异常处理中死循环
- eof造成死循环
- hashmap造成死循环
- Java在并发情况下使用HashMap造成死循环
- C语言中数组越界访问造成死循环现象
- Java中HashMap造成的死循环问题
- WM_PAINT介绍 及 OnPaint()函数的作用原理
- WM_PAINT介绍 及 OnPaint()函数的作用原理
- WM_PAINT介绍 及 OnPaint()函数的作用原理
- WM_PAINT介绍 及OnPaint()函数的作用原理
- WM_PAINT介绍 及 OnPaint()函数的作用原理
- WM_PAINT介绍及OnPaint()函数的作用原理
- WM_PAINT介绍及OnPaint()函数的作用原理
- WM_PAINT介绍及OnPaint()函数的作用原理
- WM_PAINT介绍及OnPaint()函数的作用原理
- spring在构造函数中注入对象
- 构造死循环
- 静态监听配置
- STM32的SysTick
- C++_友元函数
- 恐怖的人皮面具!~哥们儿,泡妞的时候请确认对方没带人皮面具!!
- struts 2 result type
- 在WM_PAINT处理函数OnPaint()中未构造CPaintDC对象造成死循环
- input/text与textarea的字数统计与控制
- Android进程与内存及内存泄露
- AAA服务器【Radius Server】服务器搭建&证书制作指南
- #AWK#常用函数说明
- 变量初始化
- poj 3615flody
- 进程间通信方式比较
- C++_动态存储空间的分配和释放