窗口拆分,如何随主窗口变化而同比例变化
如题,,要在MFC中基于单文档建立一个窗口分割,左边一个文档视图,右边一个对话框视图,如何编码使主窗口改变大小时,,两视图同比例变化
[解决办法]
首先你的主窗体可以获得文档视图和对话框视图的指针吧
在主窗体变化的时候WM_SIZE消息对应的OnSize函数之中
使用文档视图->MoveWindow和对话框的MoveWindow
可以根据主窗体原来的CRect的值和变大后的CRect求出2个比例(width和height)
把视图和对话框原来的长和宽乘以这个比例。然后MoveWindow
另外codeproject上面有一个控件叫EasySize,提供这种功能。
如果懒惰可以借鉴。
[解决办法]
CMainFrame类的WM_SIZE消息,OnSize函数中CSplitterWnd::SetColumnInfo/SetRowInfo()设置大小,CSplitterWnd::RecalcLayout()