使用Qt-Designer自动扩展布局

Ela*_*ich 202 layout qt qt-designer

我正在使用Qt Designer.

我想创建一个QVBoxLayout会自动扩展以填充整个窗口.

QVBoxLayout遗体的布局是固定的.

如何QVBoxLayout通过设计师扩展并填充整个窗口?

Gre*_*g S 344

QVBoxLayout在Qt Designer中创建后,右键单击窗口小部件/对话框/窗口的背景(而不是QVBoxLayout父窗口小部件),然后从上下文菜单底部选择" 布局" - >"网格布局".现在QVBoxLayout应该拉伸以适应窗口,并在调整整个窗口大小时自动调整大小.

  • 实际上,您根本不需要创建网格布局.不要自己创建QVBoxLayout,而是取消选择所有项目并单击窗口小部件的背景.然后选择Lay Out - > Lay Out Vertically. (32认同)
  • 谢谢,我一直在寻找这个问题的解决方案. (6认同)
  • 网格和垂直布局在设计和运行时都适用于我. (5认同)
  • @Michal Kottman:这只适用于设计时.当用户在运行时调整窗口大小时,它不会更改布局. (2认同)
  • 我想补充一点细节:如果你想为 **QTabWidget 页面**添加一个自拉伸布局,你实际上不能右键单击页面的背景,因为你会选择 QTabWidget 而不是相关选项卡。您必须右键单击设计器窗口中显示的选项卡标签,然后选择 _Lay Out_ -> _Lay Out in a Grid_ (2认同)

Mah*_*sam 13

根据文档,需要有一个顶级布局集.

顶级布局是必要的,以确保您的窗口小部件在调整窗口大小时正确调整大小.要检查是否已设置顶级布局,请预览窗口小部件并尝试通过拖动大小夹点来调整窗口大小.

您可以通过清除选择并右键单击表单本身并选择上下文菜单中可用的布局之一来设置一个.

Qt布局