PySide6.QtWidgets.QToolButton

class QToolButton

QToolButton 类提供了一个快速访问命令或选项的按钮,通常用于 QToolBar 内部。更多

PySide6.QtWidgets.QToolButton 的继承图

概要

属性

  • arrowTypeᅟ - 按钮是否显示箭头而不是普通图标

  • autoRaiseᅟ - 是否启用自动提升

  • popupModeᅟ - 描述弹出菜单与工具按钮的使用方式

  • toolButtonStyleᅟ - 工具按钮是否仅显示图标、仅显示文本,或在图标旁边/下方显示文本

方法

虚拟方法

插槽

信号

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

工具按钮是一种特殊的按钮,提供对特定命令或选项的快速访问。与普通的命令按钮不同,工具按钮通常不显示文本标签,而是显示图标。

工具按钮通常在创建新的QAction实例时使用addAction()创建,或者将现有操作添加到工具栏时使用addAction()。也可以像其他小部件一样构造工具按钮,并在布局中与其他小部件一起排列。

工具按钮的一个经典用途是选择工具;例如,绘图程序中的“钢笔”工具。这可以通过使用QToolButton作为切换按钮来实现(参见setCheckable())。

QToolButton 支持自动提升。在自动提升模式下,按钮只有在鼠标指向它时才会绘制3D框架。当按钮在QToolBar 内部使用时,此功能会自动开启。可以通过setAutoRaise() 来更改此设置。

工具按钮的图标设置为QIcon。这使得可以为禁用状态和活动状态指定不同的像素图。当按钮的功能不可用时,使用禁用的像素图。当按钮因为鼠标指针悬停而自动升起时,显示活动的像素图。

按钮的外观和尺寸可以通过setToolButtonStyle()setIconSize()进行调整。当在QMainWindow中的QToolBar中使用时,按钮会自动适应QMainWindow的设置(参见setToolButtonStyle()setIconSize())。除了图标外,工具按钮还可以显示箭头符号,通过arrowType指定。

工具按钮可以在弹出菜单中提供额外的选择。弹出菜单可以使用setMenu()来设置。使用setPopupMode()来配置带有菜单设置的工具按钮可用的不同模式。默认模式是DelayedPopupMode,有时用于网页浏览器中的“返回”按钮。按下并按住按钮一段时间后,会弹出一个菜单,显示可以跳转到的页面列表。超时时间取决于样式,请参阅SH_ToolButton_PopupDelay

assistant-toolbar1 Qt Assistant 的工具栏与工具按钮

Qt Assistant 的工具栏包含与主窗口其他部分使用的操作相关联的工具按钮。

class ToolButtonPopupMode

描述如何为具有菜单集或包含操作列表的工具按钮弹出菜单。

常量

描述

QToolButton.DelayedPopup

在按下并保持工具按钮一段时间后(超时时间取决于样式,请参见SH_ToolButton_PopupDelay),菜单将显示。一个典型的应用示例是某些网页浏览器工具栏中的“后退”按钮。如果用户点击它,浏览器将简单地浏览到上一页。如果用户按下并保持按钮一段时间,工具按钮将显示一个包含当前历史记录列表的菜单。

QToolButton.MenuButtonPopup

在此模式下,工具按钮显示一个特殊箭头以指示存在菜单。当按下按钮的箭头部分时,菜单会显示出来。

QToolButton.InstantPopup

当工具按钮被按下时,菜单会立即显示,没有延迟。在这种模式下,按钮自身的操作不会被触发。

注意

当使用from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。

property arrowTypeᅟ: Qt.ArrowType

此属性决定按钮是否显示箭头而不是普通图标。

这将显示一个箭头作为QToolButton的图标。

默认情况下,此属性设置为 Qt::NoArrow。

Access functions:
property autoRaiseᅟ: bool

此属性保存是否启用了自动提升。

默认情况下是禁用的(即 false)。

在使用QMacStyle时,此属性目前在macOS上被忽略。

Access functions:
property popupModeᅟ: QToolButton.ToolButtonPopupMode

此属性描述了弹出菜单与工具按钮的使用方式。

默认情况下,此属性设置为 DelayedPopup

Access functions:
property toolButtonStyleᅟ: Qt.ToolButtonStyle

此属性决定工具按钮是仅显示图标、仅显示文本,还是图标旁边/下方显示文本。

默认是Qt::ToolButtonIconOnly。

要使工具按钮的样式遵循系统设置,请将此属性设置为Qt::ToolButtonFollowStyle。在Unix上,将使用桌面环境的用户设置。在其他平台上,Qt::ToolButtonFollowStyle表示仅显示图标。

QToolButton 自动将此槽连接到其所在的 QMainWindow 中的相关信号。

Access functions:
__init__([parent=None])
Parameters:

父级QWidget

构造一个带有父级 parent 的空工具按钮。

arrowType()
Return type:

ArrowType

另请参阅

setArrowType()

属性 arrowTypeᅟ 的获取器。

autoRaise()
Return type:

布尔

另请参阅

setAutoRaise()

属性 autoRaiseᅟ 的获取器。

defaultAction()
Return type:

QAction

返回默认操作。

另请参阅

setDefaultAction()

initStyleOption(option)
Parameters:

选项QStyleOptionToolButton

使用来自此QToolButton的值初始化option。当子类需要一个QStyleOptionToolButton但不想自己填写所有信息时,此方法非常有用。

另请参阅

initFrom()

menu()
Return type:

QMenu

返回关联的菜单,如果未定义菜单,则返回None

另请参阅

setMenu()

popupMode()
Return type:

ToolButtonPopupMode

另请参阅

setPopupMode()

属性 popupModeᅟ 的获取器。

setArrowType(type)
Parameters:

类型ArrowType

另请参阅

arrowType()

属性 arrowTypeᅟ 的设置器。

setAutoRaise(enable)
Parameters:

enable – 布尔值

另请参阅

autoRaise()

属性 autoRaiseᅟ 的设置器。

setDefaultAction(action)
Parameters:

动作QAction

将默认操作设置为 action

如果工具按钮有默认操作,该操作定义了按钮的以下属性:

其他属性,如autoRepeat,不受操作影响。

另请参阅

defaultAction()

setMenu(menu)
Parameters:

菜单QMenu

将给定的menu与此工具按钮关联。

菜单将根据按钮的popupMode显示。

菜单的所有权不会转移给工具按钮。

另请参阅

menu()

setPopupMode(mode)
Parameters:

modeToolButtonPopupMode

另请参阅

popupMode()

属性 popupModeᅟ 的设置器。

setToolButtonStyle(style)
Parameters:

样式ToolButtonStyle

另请参阅

toolButtonStyle()

属性 toolButtonStyleᅟ 的设置器。

showMenu()

显示(弹出)关联的弹出菜单。如果没有这样的菜单,此函数不执行任何操作。此函数在用户关闭弹出菜单之前不会返回。

toolButtonStyle()
Return type:

ToolButtonStyle

另请参阅

setToolButtonStyle()

属性 toolButtonStyleᅟ 的获取器。

triggered(action)
Parameters:

动作QAction

当给定的action被触发时,会发出此信号。

该操作也可能与用户界面的其他部分相关联,例如菜单项和键盘快捷键。以这种方式共享操作有助于使用户界面更加一致,并且通常实现起来工作量较少。