比如有一个小的对话框程序, 有什么方法可以快速判断鼠标是在对话框程序外面还是里面?

解决方案 »

  1.   

    CRect rect;
    POINT pt;
    GetCursorPos(&pt);
    GetClientRect(&rect);
    if(rect.PtInRect(pt))
      

  2.   

    用 GetCapture来捕获 用 ::ReleaseCaoture来释放鼠标if(GetCapture() == this )
    当前仅当thsi标识的窗口在当前不好的鼠标才为真值  否则为空相关函数CWnd::GetCapture返回一个CWnd指针,指向拥有不好能力的窗口。在win32环境下,如果戍边没有不好,或他被属于别的线程不好,则GetCapture返回 返回null。这样就可以判断鼠标是否在你想要的窗口内!
      

  3.   

    CRect rect;
    POINT pt;
    GetCursorPos(&pt);
    GetWindowRect(&rect);
    if(rect.PtInRect(pt))