单文档拆分的子窗口大小固定


MFC单文档视图利用CSplitterWnd类实现窗口的拆分,但是直接生成的子窗口的区域边框可通过鼠标拖动来改变大小,这在很多应用场合下是不允许的,

为了不可改变子窗口的大小,需要重载 CSplitterWnd类的OnLButtonDown和OnMouseMove函数,为此需要利用CSplitterWnd类的派生类重载函数。


从CSplitterWnd派生自己的类CMySplitterWnd,然后重载函数

void CMySplitterWnd::OnLButtonDown(UINT nFlags, CPoint point)
{
  //CSplitterWnd::OnLButtonDown(nFlags, point);    //什么也不做
}

void CMySplitterWnd::OnMouseMove(UINT nFlags, CPoint point)
{
  //CSplitterWnd::OnMouseMove(nFlags, point);    //什么也不做
}


派生类的方法:

先利用Class Wizard,从CWnd,派生CMySplitterWnd类,然后在相应的 .h和.cpp文件中,将CWnd替换为 CSplitterWnd即可。



你可能感兴趣的:(单文档拆分的子窗口大小固定)