界面上有两个分隔窗口,两行一列我用如下语句:
CRect cRect;
GetClientRect(&cRect);
int iHeight=cRect.Height();
int iWeight=cRect.Width();
m_wndSplitter.DeleteView(1,0);//销毁下面一个窗体,并将上面窗体调整
CWnd *pWnd=m_wndSplitter.GetPane(0,0);
pWnd->SetWindowPos(pWnd,0,0,iWeight,iHeight,SWP_SHOWWINDOW);
结果把下面一个窗体删除了,但好像上面一个大小没有调整,很怪怪的!
CRect cRect;
GetClientRect(&cRect);
int iHeight=cRect.Height();
int iWeight=cRect.Width();
m_wndSplitter.DeleteView(1,0);//销毁下面一个窗体,并将上面窗体调整
CWnd *pWnd=m_wndSplitter.GetPane(0,0);
pWnd->SetWindowPos(pWnd,0,0,iWeight,iHeight,SWP_SHOWWINDOW);
结果把下面一个窗体删除了,但好像上面一个大小没有调整,很怪怪的!
解决方案 »
- 下面的想法正确吗???
- 【新手求助】按钮的Click事件不能响应
- 在MFC中怎样将char数组内容加入到CString中
- 隐藏某些控件的时候,想移动其他的位置
- 完成端口的GetQueuedCompletionStatus问题.高手请留步!!!
- 怎样在一个CListBox里显示两列内容。
- RawHtmlDlg.obj : error LNK2001: unresolved external symbol __imp__InternetReadFile@16
- 如何将MSDN和Visual Studio结合在一块!
- LoadImage读取图片失败
- 一个带VOID*成员变量的类如何定义拷贝构造函数和重载赋值操作符
- 请各位帮忙,DLL 如何把数据传给 EXE??
- 向组合框中添加内容的问题,为什么是非法操作? 在线等待!
m_wndSplitter.ReclcLayout();//调用这句才立即调整。
但deleteView后不再创建可能会有问题。
m_wndSplitter.SetRowInfo(0, nHeight0, 0);
m_wndSplitter.SetRowInfo(1, nHeight1, 0);
m_wndSplitter.RecalcLayout();
删除其中一个视图,并将另一个视图相应调整吗?