Qt调整另一个小部件内的小部件

时间:2012-07-23 12:02:35

标签: c++ qt qt4 qt-designer

我有以下布局: enter image description here

黑色矩形是QVBoxLayouts,红色矩形是通用小部件容器,蓝色小矩形是我自定义的openGL小部件。

我已经为所有布局和小部件设置了调整大小策略,但是我无法将openGL小部件调整到其父级区域(图像中的红色矩形)的大小。

我是Qt的初学者,也许我需要使用信号和插槽将小蓝色的openGL小部件调整为红色小部件?但是如何?

2 个答案:

答案 0 :(得分:0)

QGLWidget也应该在布局(任何布局类型)中,以便在调整其父级大小时自动调整其大小。

因此,例如,在设计器中,左键单击红色“通用小部件容器”,然后选择垂直布局。

答案 1 :(得分:0)

在Qt5.4中(我没有测试其他人)新的QOpenGLWidget(内部布局)在我的情况下不会自动调整大小。 我打电话给

LayoutWidget->setGeometry(QRect(0, 0, event->size().width(), event->size().height()));

在父窗口小部件的resizeEvent(QResizeEvent *事件)中。