当前位置:编程学习 > wap >>

QT子窗口退出全屏后大小异常

代码流程大概如下:
class myWidgetA : public QWidget
{
//.....
};
class myWidgetB : public QWidget
{
//......
   bool itsBFullScreen;//是否全屏显示
   void OnButtonFullScreen();
};
class myWnd : public QMainWindow
{
    //......
    myWidgetA*  itsWA;
    myWidgetB*  itsWB;
};

myWnd::myWnd(QWidget*parent)
:QMainWindow(parent)
{
    itsWA = new QDockWidget(this);
    itsWA ->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);
    addDockWidget(Qt::LeftDockWidgetArea,itsWA );

    itsWB = new myWidgetB(this);
    setCentralWidget(itsWB);
}

void myWidgetB::OnButtonFullScreen()
{
    if (itsBFullScreen)
{
      setWindowFlags(Qt::SubWindow);
      showNormal();

else
{
      setWindowFlags(Qt::Dialog);
     showFullScreen();
}
itsBFullScreen= !itsBFullScreen;
}
全屏显示时itsWB显示正常,当退出全屏时itsWA和itsWB的大小发生改变,前者的宽度变长,同时后者的宽度变短,即没有退回原始的大小,烦请各位不吝指导,多谢了!
Qt  界面 --------------------编程问答-------------------- http://blog.csdn.net/rabinsong/article/details/8660783看看,能不改变,通过保存窗体位置 --------------------编程问答-------------------- 其实你可以通过QGridLayout来实现
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,