• 4442阅读
  • 0回复

请问怎样才能实现一个QDialog 的正确收放? [复制链接]

上一主题 下一主题
离线robertkun
 

只看楼主 倒序阅读 楼主  发表于: 2009-09-21
  1. //点击收放按钮时的事件
  2. void cgtextedit::slot_btnClick(bool flag)
  3. {
  4.     QRect rect = this->geometry(); //获取整个DIALOG 的大小
  5.     if(flag) //按下时
  6.     {
  7.         rightFrame->hide(); //将右边窗口隐藏
  8.         QRect left_rect = leftFrame->geometry();  //获取左侧FRAME 大小
  9.         setGeometry(rect.x(),rect.y(),left_rect.width(),rect.height());  //重新设置对话框大小
  10.     }
  11.     else
  12.     {
  13.         rightFrame->show(); //将右侧窗口显示
  14.         QRect right_rect = rightFrame->geometry();  //获取右侧窗口大小
  15.         setGeometry(rect.x(),rect.y(),rect.width()+right_rect.width(),rect.height());  /重新设置对话框大小
  16.     }
  17. }


上面是我的代码,重新收放时效果很差,不是收缩误差很大,不知道有没有好的方法可以解决?
请高手指点!谢谢~
附件: cgtextedit.rar (4 K) 下载次数:5
                                              简单的生活使人快乐!
快速回复
限100 字节
 
上一个 下一个