Qt:了解 Qt Designer

Qt:了解 Qt Designer_第1张图片

启动设计器

  • 安装Qt之后,您可以以像启动开发主机上任何其他应用程序相同的方式启动Qt Designer。
  • 也可以直接从Qt Creator启动Qt Designer。Qt Creator自动打开集成到Qt Designer中的所有.ui文件

如果您有不适合Qt创建者设计模式的大form,您可以在独立的Qt设计器中打开它们。

用户界面

当用作独立应用程序时,Qt Designer的用户界面可以配置为提供多窗口用户界面(默认模式),也可以在停靠窗口模式下使用。当从集成开发环境IDE中使用时,仅可用于多窗口用户界面。你可以从Edit菜单的Preferences对话框切换模式

在多窗口模式下,您可以安排每个工具窗口以适应您的工作风格。主窗口包括一个菜单栏、一个工具栏和一个小部件框,其中包含您可以用来创建用户界面的小部件。
Qt:了解 Qt Designer_第2张图片
Qt D esigner的大多数功能都可以通过菜单栏,工具栏或者小部件盒访问。某些功能还可以通过上下文菜单中提供。这些菜单可以通过窗体窗口打开。在大多数平台上,使用正确的鼠标打开上下文菜单

Qt:了解 Qt Designer_第3张图片
上面就是Qt Designer的小部件盒:

  • 小部件盒提供一系列的Qt小部件, 布局和其他对象,可用于在表单上创建用户界面。小部件盒中的每个类别都包含具有类似用户或者相关功能的小部件
  • 小可以单击列表标签方便的手柄,在类别中显示所用可用的对象,在小部件编辑模式中,您可以将适当的项目从小部件拖放到form上,从而将对象添加到表单中

布局

布局用于排列和管理构成用户界面的元素,Qt提供了多个类来自动处理布局— QHBoxLayout, QVBoxLayout, QGridLayout, QFormLayout.。这些类解决了自动布局小部件的难题,提供了一个行为可预测的用户界面。幸运的是,使用Qt Designer排列小部件不需要了解布局类,只需要从关联菜单中选择水平布局(Lay Out Horizontally), 网格布局(Lay Out in a Grid)等选项

每个Qt小部件都有一个推荐的大小,称为sizeHint(),布局管理器将尝试调整小部件大小以满足其大小提示。在某些情况下,没有必要有不同的尺寸,例如,根据字体大小和风格,QLineEdit的高度始终是固定值。在其他情况下,您可能需要更改大小,例如QLineEdit的宽度或者项目视图小部件的宽度和高度。这就是小部件大小限制: minimumSize 和 maximumSize限制发挥作用的地方。这些是您可以在属性编辑器中设置的属性。比如,要覆盖默认大小(sizeHint),只需将minimumSizemaximumSize设置为相同值即可;或者,要将当前大小用作大小越苏值,请从小部件的上下文菜单中选择**Size Constraint(大小约束)**选项之一。然后,布局将确保满足这些限制。要通过代码控制小部件的大小,您可以在代码中重新实现sizeHint()

下面的屏幕截图显示了使用网格设计的基本用户界面的细分。屏幕截图上的坐标显示了网格中每个小部件的位置。
Qt:了解 Qt Designer_第4张图片

注意,在网格中,QPushButton对象实际上是嵌套的。右侧的按钮首先放置在QVBoxLayout中;底部的按钮首先防止在QHBoxLayou中。最后,将它们放在QGridLayout的指标(1,2)和(2,1)中。

为了可视化,将布局想象成一个尽可能缩小的盒子,试图将小部件压缩成整齐的排列,同时最大限度地利用可用空间。

Qt的布局有助于:

  • 调整用户面大小以适应不同的窗口大小
  • 调整用户界面内的元素,以适应不同的本地化。
  • 根据不同平台的布局指南安排元素

因此,你不再需要为不同的平台,设置和语言重新排列小部件

下面实例显示了不同的本地化如何影响用户界面。当本地化需要更多的空间来延长文本字符串时,Qt 布局会自动缩放以适应此情况,同时确保用户界面看起来可用且仍然符合平台准则。
Qt:了解 Qt Designer_第5张图片
布置小部件的过程包括创建布局层次结构,同时尽可能少地设置小部件大小限制。

有关 Qt 布局类的更多技术视角,请参阅布局管理文档。

你可能感兴趣的:(C++)