除了拖动标题栏移动窗口以外,我们也可以拖动窗口任意位置(除控件)位置而使对话框移动。 这里只讲述基于对话框的程序 首先在对话框类中定义几个变量 class C***Dlg : public CDialog …… 其次添加OnLButtonDown消息响应函数 void C***Dlg::OnLButtonDown(UINT nFlags, CPoint point) CDialog::OnLButtonDown(nFlags, point); void C***Dlg::OnMouseMove(UINT nFlags, CPoint point) this->MoveWindow(&startRect); 将窗口移到新的位置 当释放鼠标时不再拖动窗口,所以要添加OnLButtonUp消息响应函数 void CUserLoginDlg::OnLButtonUp(UINT nFlags, CPoint point) |
============================================================
另外可以在主窗体上实现鼠标左键按下功能里面加上窗体标题拖动的消息也可以,但要在主对话框中实现
void Cxxx::OnLButtonDown(UINT nFlags, CPoint point)
{
//点任意位置移动窗口
PostMessage (WM_NCLBUTTONDOWN , HTCAPTION ,MAKELPARAM(point.x , point. y ));
}