CSplitterWnd分割后设置大小的问题

lgh1982 2006-05-25 09:50:24
我用CSplitterWnd将客户区分成2×2四个View,我想它们是一样大的,于是我在CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) 中写了如下语句:
CRect r;
GetClientRect(&r);
m_wndSplitter.SetRowInfo( 0, r.Height()/2, 0 );
m_wndSplitter.SetColumnInfo( 0, r.Width()/2, 0 );
m_wndSplitter.RecalcLayout();

但是分出来的四个View确不是一样大,请问各位大虾,这是什么引起的啊?
...全文
263 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Juchiyufei 2006-07-21
  • 打赏
  • 举报
回复
重载CSplitterWnd::RecalcLayout

就是自己写一个从CSplitterWnd的派生类,重写RecalcLayout函数.
真糨糊 2006-05-26
  • 打赏
  • 举报
回复
在OnCreate里设置
lgh1982 2006-05-26
  • 打赏
  • 举报
回复
请问如何重载啊?能说详细点吗?
lyl_rabbit 2006-05-25
  • 打赏
  • 举报
回复
把这两句改一下,看看还一样大吗?

m_wndSplitter.SetRowInfo( 0, r.Height()/3, 0 );
m_wndSplitter.SetColumnInfo( 0, r.Width()/4, 0 );
flyingxu 2006-05-25
  • 打赏
  • 举报
回复
重载CSplitterWnd::RecalcLayout

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧