如何设置“mfc窗体大小”不能改变?
1个回答
展开全部
有多种方式:
1、响应WM_GETMINMAXINFO消息(设置lpMMI->ptMinTrackSize和lpMMI->ptMaxTrackSize)
2、响应WM_SYSCOMMAND消息,屏蔽SC_SIZE(if((nID & 0xFFF0) == SC_SIZE) return;)
3、响应WM_NCHITTEST消息,如下:
UINT CXxDlg::OnNcHitTest(CPoint point)
{
UINT ht = CDialog::OnNcHitTest(point);
if(ht >= HTLEFT && ht <= HTBOTTOMRIGHT)
ht = HTBORDER;
return ht;
}
4、直接拿掉窗口的THICKFRAME风格即可:
ModifyStyle(m_hWnd,WS_THICKFRAME,0,0);
1、响应WM_GETMINMAXINFO消息(设置lpMMI->ptMinTrackSize和lpMMI->ptMaxTrackSize)
2、响应WM_SYSCOMMAND消息,屏蔽SC_SIZE(if((nID & 0xFFF0) == SC_SIZE) return;)
3、响应WM_NCHITTEST消息,如下:
UINT CXxDlg::OnNcHitTest(CPoint point)
{
UINT ht = CDialog::OnNcHitTest(point);
if(ht >= HTLEFT && ht <= HTBOTTOMRIGHT)
ht = HTBORDER;
return ht;
}
4、直接拿掉窗口的THICKFRAME风格即可:
ModifyStyle(m_hWnd,WS_THICKFRAME,0,0);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询