手动调用DestroyWindow时导致的窗口两次被销毁

来源:互联网 发布:游泳衣女装连体淘宝网 编辑:程序博客网 时间:2024/05/21 14:01

我自己写了一个函数,里面调用DestroyWindow来销毁了。

但是WM_CLOSE的响应没有重写,所以按下close后,系统又重新送出了DestroyWindow的消息,所以窗口被销毁了两次。从而导致HDC已经被销毁过。
最后重写WM_CLOSE解决。
case WM_CLOSE:
{
     PostQuitMessage(0);
     return 0;
}

只让close响应跳出消息循环,而不销毁窗口。


所有的原因就是在于WM_CLOSE的响应是自己会调用DestroyWindow的。一个窗口显然不能被Destroy两次。

原创粉丝点击