WM_CLOSE消息处理后

来源:互联网 发布:mac如何固定dock 编辑:程序博客网 时间:2024/06/05 01:14

当我们想关闭控件句柄,节省资源时,可以::SendMessage (hand,WM_CLOSE,NULL,NULL)此时控件句柄被关闭。

此时m_hWnd被CloseHand后并被赋予了NULL。虽然此时这个控件的没有被析构,但是当我们调用CWnd的方法时会出现assert警告框,这是为什么呢?_AFXWIN_INLINE void CWnd::GetWindowRect(LPRECT lpRect) const
 { ASSERT(::IsWindow(m_hWnd)); ::GetWindowRect(m_hWnd, lpRect); }等所有CWnd 方法在调用成员函数时都会判断窗口句柄是否还有效,所以会出现警告框。

原创粉丝点击