当前位置: 代码迷 >> QT开发 >> QMdiSubWindow怎么用程序控制窗体大小
  详细解决方案

QMdiSubWindow怎么用程序控制窗体大小

热度:112   发布时间:2016-04-25 03:21:13.0
QMdiSubWindow如何用程序控制窗体大小
在qt下使用mdiArea

        FrmTest *l_new = new FrmTest();
//l_new->resize(256,256);
QMdiSubWindow *l_add = ui.mdiArea->addSubWindow(l_new);
//l_add->setFixedSize(256 ,256);//这句有用但是窗体不能变化了
//l_add->resize(256,256);
//l_new->resize(256,256);
l_new->show();

FrmTest为QWidget的派生类。
那些注释掉的resize调用无法生效,子窗体加入区域后窗体内容全部看不见,只能看见最大化最小化关闭按钮【是个瘪平的窄条】,可以用鼠标拖动展开。

这样效果不好,如何解决。
------解决方案--------------------
引用:
在qt下使用mdiArea

        FrmTest *l_new = new FrmTest();
//l_new->resize(256,256);
QMdiSubWindow *l_add = ui.mdiArea->addSubWindow(l_new);
//l_add->setFixedSize(256 ,256);//这句有用但是窗体不能变化了
//l_add->resize(256,256);
//l_new->resize(256,256);
l_new->show();

FrmTest为QWidget的派生类。
那些注释掉的resize调用无法生效,子窗体加入区域后窗体内容全部看不见,只能看见最大化最小化关闭按钮【是个瘪平的窄条】,可以用鼠标拖动展开。

这样效果不好,如何解决。

你这顺序写的有问题,应该show之后再调用resize()才会生效;
------解决方案--------------------
我遇见过类似的问题,你有没有将mdi放置到主控件的central中?