在 Qt Designer 中使用布局
在可以使用窗体之前,需要将窗体上的对象放置到布局中。这确保了窗体预览或用于应用程序中时,对象能正确显示。在布局中放置对象还确保窗体调整大小时它们能正确调整大小。
一旦部件被插入到布局中,就无法单独移动和调整它们的大小,因为布局本身控制其中每个部件的几何形状,并考虑间距提供的提示。可以添加间距到布局中以影响部件的几何形状。
布局可以嵌套以形成层次结构。例如,为了实现包含按钮水平行典型对话框布局,可以使用包含按钮底部水平布局的垂直框布局来布置对话框元素。有关 Qt 布局系统的介绍,请参阅 布局管理。
要断开布局,请按 Ctrl+0 或从窗体的上下文菜单、窗体菜单或主工具栏中选择 断开布局。
设置顶级布局
可以通过清除选择(在窗体本身上单击左鼠标按钮)并应用布局来设置窗体的顶级布局。顶级布局对于确保窗体窗口调整大小时窗体部件能正确调整大小是必要的。要检查是否已设置顶级布局,预览窗体并尝试通过拖动大小手柄调整窗口大小。
应用布局 要应用布局,可以从左侧显示的工具栏或下面的上下文菜单中选择布局。 |
类似地,顶级布局分别设置在容器部件中(QGroupBox)、基于页面的容器部件的页面中(QTabWidget、QToolBox 和 QStackedWidget)。需要选择容器部件才能成功执行此操作。
顶级布局在对象检查器中不作为独立对象可见。它们的属性在属性编辑器中以窗体的属性、容器部件的属性或容器部件页面的属性显示。
布局对象
通过将布局应用于一组现有对象来创建布局对象。可以通过选择需要管理的对象,并使用主工具栏、“窗体”菜单或窗体的上下文菜单应用其中一个标准布局来实现。
布局对象由窗体上的红色框指示,并在对象检查器中作为对象显示。其属性(边距和约束)在属性编辑器中显示。
布局对象可以被选中并放入另一个布局中,与其他小部件和布局对象一起构建布局层次结构。
当选中一个子布局对象时,可以通过按下Shift键并在其上点击来选中其父布局对象。这使得在具有小型框架的情况下选择特定布局成为可能。
将对象插入布局
可以将对象从当前位置拖动到现有布局中,并将它们放在所需位置。当对象被拖动到布局上时,会显示一个蓝色光标,以指示对象将被添加的位置。
将对象插入布局
布局类型
水平和垂直(框)布局
在表单上排列对象的最简单方法是将它们放置在水平或垂直布局中。水平布局确保小部件水平对齐;垂直布局确保它们垂直对齐。
水平和垂直布局可以组合和嵌套到任何深度。但是,如果您需要更精确地控制对象的放置,考虑使用网格布局。
网格布局
可以通过将对象放在网格布局中来创建复杂的表单布局。这种布局允许表单设计者有更多自由地排列表单上的小部件,但可能会导致布局灵活性较低。然而,对于某些类型的表单布局,网格排列比嵌套水平和垂直布局更合适。
表单布局
QFormLayout类在两列形式中管理小部件;左侧列包含标签,右侧列包含字段小部件,如行编辑、交换框等。《QFormLayout》类遵循各种平台外观和感觉指南,并支持长行的包装。
上面的UI文件在以下预览中。
Windows XP | macOS | Cleanlooks |
---|---|---|
分割器布局
另一种管理表单上对象布局的常见方法是放置分割器。这些分割器以类似于正常布局的方式按水平或垂直排列对象,但还允许用户调整分配给每个对象的间距。
尽管QSplitter是一个容器小部件,但Qt Designer将分割器对象视为应用于现有小部件的布局。要将一组小部件放入分割器中,请按如下所示选择它们,然后通过使用适当的工具栏按钮、键盘快捷键或布局上下文菜单项应用分割器布局。
快捷键
除了标准工具栏和上下文菜单项之外,还有一组键盘快捷键可以应用于小部件的布局。
布局 | 快捷键 | 说明 |
---|---|---|
水平 | Ctrl+1 | 将选择的对象放入水平布局。 |
垂直 | Ctrl+2 | 将选择的对象放入垂直布局。 |
网格 | Ctrl+5 | 将选择的对象放入网格布局。 |
表单 | Ctrl+6 | 将选择的对象放入表单布局。 |
水平分割器 | Ctrl+3 | 创建水平分割器并将选择的对象放入其中。 |
垂直分割器 | Ctrl+4 | 创建垂直分割器并将选择的对象放入其中。 |
调整大小 | Ctrl+J | 调整布局大小以确保每个子对象有足够的空间来显示其内容。有关更多信息,请参阅 QWidget::adjustSize()。 |
注意:使用Ctrl+0来断开布局。
© 2024 Qt公司有限。在此包含的文档贡献的版权属于各自的拥有者。提供的文档根据自由软件基金会发布的GNU自由文档许可证第1.3版的条款获得许可。Qt及其相关标志是芬兰和/或世界各地Qt公司的商标。所有其他商标均属于其各自的所有者。