VC 没有标题栏拖动窗口

来源:互联网 发布:prisma tensorflow 编辑:程序博客网 时间:2024/05/29 18:00
比如果应用程序自己绘制的界面没有标题栏,那我们怎么来拖动程序呢?那么就可以添加下面消息:
UINT CMainWindow::OnNcHitTest (CPoint point)
{
UINT nHitTest = CFrameWnd::OnNcHitTest (point);
if (nHitTest == HTCLIENT) //如果是客户区
nHitTest = HTCAPTION; //则把它当成标题栏
return nHitTest;
}
 
 
 

LRESULT CPCSuiteDlg::OnNcHitTest(CPoint point)
{
 // TODO: 在此添加消息处理程序代码和/或调用默认值

 //设置拖动区域
 CRect rc;
 GetClientRect(&rc);
#ifdef _FEATURE_CHECK_TOOL
 rc.bottom = m_nTitleBarHeight;//限制拖动高度
#else
 rc.bottom = rc.top + 67;//限制拖动高度
#endif
 ClientToScreen(&rc);
 return rc.PtInRect(point) ? HTCAPTION : CDialog::OnNcHitTest(point);
}

0 0
原创粉丝点击