我希望程序运行时最大化显示,而且不希望之后鼠标在标题栏双击,单击移动等一些动作。
主要用到重载窗口非客户区的一些函数
其操作如下:
第一:在
//{{AFX_MSG(CMainFrame)
//}}AFX_MSG
中间添加
afx_msg void OnNcLButtonDblClk(UINT nHitTest, CPoint point);
afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point);
afx_msg void OnNcRButtonDown(UINT nHitTest, CPoint point);
第二:在消息映射中
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
添加
ON_WM_NCLBUTTONDBLCLK()
ON_WM_NCLBUTTONDOWN()
ON_WM_NCRBUTTONDOWN()
第三:在源文件中实现这些函数
void CMainFrame::OnNcLButtonDblClk(UINT nHitTest, CPoint point)
{
if(nHitTest!=HTCAPTION)
CWnd::OnNcLButtonDblClk(nHitTest, point);
else
return;
}
void CMainFrame::OnNcLButtonDown(UINT nHitTest, CPoint point)
{
if(nHitTest!=HTCAPTION)
CWnd::OnNcLButtonDblClk(nHitTest, point);
else
return;
}
void CMainFrame::OnNcRButtonDown(UINT nHitTest, CPoint point)
{
if(nHitTest!=HTCAPTION)
CWnd::OnNcLButtonDblClk(nHitTest, point);
else
return;
}
这样就大功告成啦!!