本页内容

按钮控件

Qt Quick Controls 提供了一系列类似按钮的控件。

AbstractButton

提供按钮通用功能的抽象基类

Button

可通过单击执行命令或回答问题的按钮

CheckBox

可切换为开启或关闭状态的复选按钮

DelayButton

长按一定时间后触发的复选按钮

RadioButton

互斥单选按钮,可切换为开启或关闭状态

RoundButton

一个具有圆角、可供用户点击的按钮控件

Switch

可切换为开启或关闭状态的按钮

ToolButton

外观适合工具栏的按钮

每种类型的按钮都有其特定的使用场景。以下各节将根据具体使用场景,提供选择合适按钮类型的指导原则。

按钮控件

Button 是一种可点击的控件,用于触发操作,或打开/关闭弹出窗口。按钮通常带有文本标签,但也可能包含图标。

当弹出窗口或对话框需要执行某项操作时,按钮是一个非常合适的控件。最常见的示例包括“应用”、“取消”、“保存”、“关闭”和“帮助”。

建议:

  • 按钮的文本应为描述该操作的动词,或与将要打开的弹出窗口标题相匹配的名词。
  • 请勿使用按钮来设置状态。Switch 更适合用于此目的。
  • 除非 UI 指南另有规定,否则请使用默认字体。
  • 如果文本需要本地化,请考虑较长文本对布局的影响。

另请参阅 Button 和AbstractButton

CheckBox 控件

CheckBox 用于构建多选选项列表。可以选择任意数量的选项(包括不选),但这些选项不应相互排斥。

对于“是/否”的选择(例如,当您必须在表单中接受服务条款协议时),请使用单个CheckBox 。

对于单一的“是/否”选择,也可以使用开关控件。如果选择涉及选项,最好使用CheckBox ;如果涉及要采取的操作,则建议使用开关控件。

当选项可以分组时,您可以使用部分勾选的CheckBox 来代表整个组。当用户在组中选择了部分但并非所有子项时,请使用复选框的partially checked state 。

复选框有三种可用的状态:已选中、部分选中和未选中。

可选选项通常垂直排列。

建议:

  • 复选框标签应为一条陈述句,当复选框被选中时该陈述成立,未被选中时则不成立。
  • 复选框标签不应包含否定陈述。
  • 除非用户界面指南另有规定,否则应使用默认字体。
  • 如果文本需要本地化,请考虑较长的文本对布局的影响。

另请参阅 CheckBox

延迟按钮控件

DelayButton 是一种在触发操作前会引入延迟的按钮。这种延迟可防止误触。

建议:

  • 适用于触摸式用户界面。
  • 适用于必须谨慎触发的操作。

另请参阅 Button 和AbstractButton

单选按钮控件

RadioButton 用于从一组选项中仅选择一个选项。选择一个选项会自动取消之前所选的选项。

如果只有两个互斥的选项,请将它们合并为一个复选框或一个切换按钮。

建议:

  • 标签文本应限制在一行内。
  • 确保勾选一个合理的默认选项。
  • 将RadioButton 选项垂直排列。
  • 如果文本需要本地化,请考虑较长文本对布局的影响。
  • 除非 UI 指南另有规定,否则请使用默认字体。
  • 与“CheckBox ”一样,不要使列表过大。
  • 为避免混淆,请勿将两组单选按钮并列放置。

另请参阅 RadioButton

RoundButton 控件

RoundButton 是一种可点击的控件,用于启动操作,或打开/关闭弹出窗口。带有方形图像图标或单字母字体图标的圆形按钮呈圆形。圆形RoundButton 占用的空间比普通Button 更少,也可用作悬浮操作按钮。

带勾号图标的圆形按钮

建议:

  • 标签应简短扼要。
  • 如果文本需要本地化,请考虑较长文本对布局的影响。

另请参阅 RoundButton

开关控件

标有“Switch”的开关处于关闭状态

Switch 代表一个物理开关,允许用户在“开”或“关”状态之间进行选择。请将开关用于二进制操作,此类操作在开关开启后会立即生效。例如,用于开启或关闭 Wi-Fi 的开关。

建议:

  • 标签应简短扼要。
  • 如果文本需要本地化,请考虑较长文本对布局的影响。

另请参阅 Switch

ToolButton 控件

标签为 ToolButton 的工具按钮

ToolButton 与Button 几乎完全相同,但其图形化外观使其更适合插入到ToolBar 中。

另请参阅 ToolButton

© 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.