CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

关于CSplitterWnd创建的子窗口大小的自动变化问题

楼主wuhuang95(游风抚云)2004-12-04 10:48:21 在 VC/MFC / 界面 提问

VC中,我用CSplitterWnd将窗口分为两个子窗口,我现在希望按一个菜单按钮后,左边的子窗口的宽度变成0,右子窗口铺满整个窗口,该如何做啊,请帮帮忙啊! 问题点数:20、回复次数:3Top

1 楼EnochShen(小疯子:真的好菜—知耻而后勇!)回复于 2004-12-04 10:53:36 得分 5

SetRowInfoTop

2 楼bobob(静思)回复于 2004-12-04 11:01:26 得分 15

BOOL   bShowThumb   =   FALSE;  
  void   CMainFrame::Split()    
  {  
  CRect   rect;  
   
  GetWindowRect(&rect);  
  if(!bShowThumb)  
  {  
  SecView*   pSecView   =   (SecView*)m_wndSplitter.GetPane(0,1);  
  m_wndSplitter.SetColumnInfo(1,rect.Width()-100,10);  
  FstView*   pFstView   =   (FstView*)m_wndSplitter.GetPane(0,0);  
  m_wndSplitter.SetColumnInfo(0,100,10);  
  m_wndSplitter.RecalcLayout();  
  bShowThumb   =   TRUE;  
  }  
  else  
  {  
  SecView*   pSecView   =   (SecView*)m_wndSplitter.GetPane(0,1);  
  m_wndSplitter.SetColumnInfo(1,rect.Width(),10);  
  FstView*   pFstView   =   (FstView*)m_wndSplitter.GetPane(0,0);  
  m_wndSplitter.SetColumnInfo(0,0,10);  
  m_wndSplitter.RecalcLayout();  
  bShowThumb   =   FALSE;  
  }  
   
  }  
  Top

3 楼wuhuang95(游风抚云)回复于 2004-12-04 13:33:41 得分 0

关键是这一句:m_wndSplitter.RecalcLayout();我忘了调用!现在搞定啦!感谢上面两位大哥!!!Top

相关问题

  • 自动创建指定大小的文件
  • 关于CSplitterWnd创建的视图的大小问题
  • !!自动创建还是动态创建!!
  • 怎样才能使form和其他容器自动适应容器中动态创建的控件的大小?
  • 在程序中自动创建DBCheckbox
  • 怎么样自动创建按钮
  • Exchange不能自动创建邮箱
  • 如何自动创建 主键
  • 创建了自动增长序列是否就自动创建了索引
  • 如何在服务器上自动创建为客户创建目录?

关键词

  • wndsplitter
  • bshowthumb
  • fstview
  • setcolumninfo
  • secview
  • getpane
  • recalclayout
  • rect

得分解答快速导航

  • 帖主:wuhuang95
  • EnochShen
  • bobob

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo