您的位置:首页 > 其它

普通窗口非标题栏拖动方法

2009-11-05 20:24 232 查看
在对话框中添加左键按下响应函数,在此函数中发送以下消息:

PostMessage(WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x, point.y));

例子:

void CTestDialog::OnLButtonDown(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

//向系统发送HTCAPTION消息,让系统以为鼠标点在标题栏上,完成窗口的拖动

PostMessage(WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x, point.y));

CDialog::OnLButtonDown(nFlags, point);

}

要记得在消息映射中加入:

BEGIN_MESSAGE_MAP(CSBBaseDialog, CDialog)

//{{AFX_MSG_MAP(CSBBaseDialog)

ON_WM_LBUTTONDOWN()

//}}AFX_MSG_MAP

END_MESSAGE_MAP()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: