背景:原有代码里,点击按钮,弹出一个浮动的对话框,连续多次快速点击标题栏,同时拉动标题栏,此对话框会被拖动,并被改变大小。没做过MFC,于是找度娘求了一上午奶,味道不怎么好,但好歹解决了。。。
.h文件
afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point); LRESULT OnNcHitTest(CPoint point);.cpp文件
BEGIN_MESSAGE_MAP(MyDialog, CDialogEx) ON_WM_NCLBUTTONDOWN() ON_WM_NCHITTEST() END_MESSAGE_MAP() void MyDialog::OnNcLButtonDown(UINT nHitTest, CPoint point) { if (HTCAPTION == nHitTest) { return; } CDialog::OnNcLButtonDown(nHitTest, point); } LRESULT MyDialog::OnNcHitTest(CPoint point) { UINT Flag = CDialog::OnNcHitTest(point); if (Flag == HTCAPTION) { return HTCLIENT; } else if (Flag == HTCLIENT) { return HTCAPTION; } else { return Flag; } }原理我也不懂,也没心思搞前端,就是一头莽。问题反正解决了,留个记录,以做参考。