VS2005对话框如果Border属性为None时候就没有上面边框, 我们工程需要此风格的对话框风格,
但这种对话框没有边框就无法用鼠表拖动该对话框,请问怎么样既可以让对话框没有边框又可以被鼠标拖动呢?

解决方案 »

  1.   

    WM_NCHITTEST 消息响应.即重载 afx_msg LRESULT OnNcHitTest(
       CPoint point 
    );
     
    返回 HTCAPTION   In a title-bar area.
      

  2.   

    楼主参考下《Windows界面编程第三篇 异形窗体 普通版》和《Windows界面编程第四篇 异形窗体 高富帅版》吧,不但有讲解,还提供代码下载。
    http://blog.csdn.net/morewindows/article/details/8451633http://blog.csdn.net/morewindows/article/details/8451638
      

  3.   

    超简单   添加
    定义: 
    afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
    响应:
    ON_WM_LBUTTONDOWN()
    实现:
    void CMyDlg::OnLButtonDown(UINT nFlags, CPoint point) 
    {
    PostMessage(WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,point.y)); 
    CDialog::OnLButtonDown(nFlags, point);
    }