100

我想要一个小QFormLayout部件来填充它的父部件。

我使用Qt Designer 中的模板创建了一个新的.ui文件。QWidgetQFormLayout在那个“窗口”里面放了一个,然后在里面放了一些控件QFormLayout

这一切都运作良好,但QFormLayout始终保持在我在 Qt Designer 中设置的大小。我想QFormLayout填充它的父小部件并用它来增长/缩小。

我怎样才能做到这一点?

4

4 回答 4

143

在 Designer 中,激活 centralWidget 并分配一个布局,例如水平或垂直布局。然后您的 QFormLayout 将自动调整大小。

设计师形象

始终确保所有小部件都有布局!否则,自动调整大小将与该小部件中断!

也可以看看

在 QtDesigner 中,控件坚持太大,并且不会调整大小

于 2011-05-18T13:05:17.877 回答
44

我发现在中央小部件下添加至少一个子部件之前,不可能为它分配布局。然后我可以突出显示带有红色“禁用”标记的小图标,然后单击顶部设计器工具栏中的布局。

于 2013-01-11T02:57:31.870 回答
11

接受的答案(它的图像)是错误的,至少现在在 QT5 中。相反,您应该为根对象/小部件分配一个布局(指向上述图像,它应该是MainWindow而不是centralWidget)。另请注意,您必须在QObject其下至少创建一个才能使其正常工作。这样做,您的 ui 将响应窗口大小调整。

于 2018-08-10T05:46:34.807 回答
6

您需要将顶级 QWidget 对象的默认布局类型从 Break 布局类型更改为其他布局类型(垂直布局、水平布局、网格布局、表单布局)。例如: 在此处输入图像描述

对于这样的事情:

在此处输入图像描述

于 2020-05-12T10:33:10.280 回答