模态对话框点击外面如何销毁
模态对话框创建后, 如何判断鼠标在其外部点击了并进而销毁对话框?
[解决办法]
HWND g_hWnd = NULL;HHOOK hOldHook = NULL;LRESULT CALLBACK LowLevelMouseProc(int nCode, WPARAM wParam, LPARAM lParam){ if((HC_ACTION == nCode) && (WM_LBUTTONDOWN ==wParam)) { CPoint pt; CRect rc; GetCursorPos(&pt); GetWindowRect(g_hWnd, &rc); if(!rc.PtInRect(pt)) { PostMessage(g_hWnd, WM_CLOSE, 0, 0); } } return CallNextHookEx(hOldHook, nCode, wParam, lParam);}void CXXXDlg::OnOK() { g_hWnd = GetSafeHwnd(); hOldHook = (HHOOK)SetWindowsHookEx(WH_MOUSE_LL, LowLevelMouseProc, AfxGetInstanceHandle(), 0);}