xml-ph-0000@deepl.internal 快速入门Qt Widgets Designer

使用Qt Widgets Designer 的快速入门包括四个基本步骤:

  1. 选择表单和对象
  2. 将对象布局到表单上
  3. 将信号连接到插槽
  4. 预览表单

一张截图,展示了一个带有滑块的RGB控制器,可用于调节红、绿、蓝三色的数值

假设你想设计一个小型控件(参见上图截图),其中包含用于调整红、绿、蓝(RGB)值的控件——这种控件在图像处理程序中随处可见。

显示了一个列表表单的截图,其中包含要添加到窗口中的所有组件选择表单

首先,在“新建表单”对话框中选择“控件”。

显示RGB控制器组件布局的屏幕截图在表单上放置控件

将三个标签、三个旋转框和三个垂直滑块拖放到表单上。要更改标签的默认文本,只需双击该标签即可。你可以根据自己的布局需求对它们进行排列。

为了确保它们在程序中能完全按照此布局排列,您需要将这些控件放入布局中。我们将以三件为一组进行操作。选择“RED”标签,然后按住Ctrl 键同时选中与其对应的旋转框和滑块。在“表单”菜单中,选择“以网格布局排列”。

截图展示了RGB控制器组件的布局,其中选中了一个组件显示 Qt Widgets Designer 编辑器中“以网格布局”选项的屏幕截图

对另外两个标签及其对应的旋转框和滑块,重复上述步骤。

下一步是将这三个布局合并为一个主布局。主布局是顶级控件(在本例中为QWidget )的布局。确保顶级控件具有布局非常重要;否则,当窗口大小发生变化时,窗口中的控件将无法随之调整大小。 要设置布局,请在表单上任意位置(三个独立布局之外)右键单击,然后选择“水平布局”。此外,您也可以选择“网格布局”——您仍会看到相同的排列方式(如下图所示)。

显示最终版式效果的截图

注意:主 布局在表单上不可见。要检查是否已设置主布局,请尝试调整表单大小;此时控件应随之调整大小。此外,您还可以查看Qt Widgets Designer 的“对象检查器”。如果顶级控件没有布局,您会在其旁边看到一个破损的布局图标,显示“不使用顶级布局”选项的屏幕截图 。

当您点击滑块并将其拖动到某个数值时,希望旋转框能显示滑块的位置。要实现此行为,您需要将滑块的valueChanged() 信号连接到旋转框的setValue() 槽。 你还需要建立反向连接,例如,将旋转框的valueChanged()信号连接到滑块的setValue()槽上。

要执行此操作,您需要切换到“编辑信号/插槽”模式,方法是按F4 键,或者从“编辑”菜单中选择“编辑信号/插槽”。

RGB控制器的屏幕截图,显示了滑块与旋转输入框之间的信号连接将信号连接到槽

单击滑块,然后将光标拖动到旋转框处。如下图所示,“配置连接”对话框将弹出。选择正确的信号和插槽,然后单击“确定”。

截图展示了将旋转框与滑块连接的配置,以便旋转框的值能够改变滑块的数值

重复该步骤(顺序相反),单击旋转框并拖动光标朝向滑块,将旋转框的valueChanged()信号连接到滑块的setValue()插槽。

您可以参考下图,选择正确的信号和插槽。

截图展示了将滑块与旋转输入框关联的配置,这样滑块就能改变旋转输入框的数值

现在您已成功连接了 RGB 控制器中“RED”组件的对象,请按照同样的方法连接“GREEN”和“BLUE”组件。

由于 RGB 值的范围在 0 到 255 之间,我们需要将旋转框和滑块限制在该特定范围内。

显示可更改旋转输入框中可输入的最小值和最大值的选项的屏幕截图设置控件属性

点击第一个旋转框。在“属性编辑器”中,您将看到QSpinBox 的属性。在maximum 属性中输入“255”。然后,点击第一个垂直滑块,您将看到QAbstractSlider 的属性。同样在maximum 属性中输入“255”。对剩余的旋转框和滑块重复此过程。

现在,我们预览表单以查看它在应用程序中的显示效果——按Ctrl + R或从“表单”菜单中选择“预览”。 尝试拖动滑块——旋转框的数值也会随之同步变化(反之亦然)。此外,您可以调整窗口大小,观察用于管理子控件的布局如何响应不同的窗口尺寸。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.