子窗口移动带其他窗口移动设置

移动无边框窗体(发送WM_SYSCOMMAND和SC_MOVE + HTCAPTION消息)

MESSAGE_HANDLER(WM_NCHITTEST, OnNcHitTest)

LRESULT OnNcHitTest(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/)  


            ::SendMessage(m_hWndMainFrame,WM_SYSCOMMAND, SC_MOVE|0x0002,(LPARAM)&pt);

如果是对话框则直接

LRESULT OnNcHitTest(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/)  

    POINT pt;  
    pt.x = GET_X_LPARAM(lParam);  
    pt.y = GET_Y_LPARAM(lParam);  
    GetClientRect(&rc);  
    if(rc.PtInRect(pt)){
           return HTCAPTION;

  }

  return 0;

猜你喜欢

转载自blog.csdn.net/csdn9990/article/details/82909010