QToolButton

The QToolButton class provides a quick-access button to commands or options, usually used inside a QToolBar . More

Inheritance diagram of PySide2.QtWidgets.QToolButton

Synopsis

Functions

Slots

Signals

Detailed Description

A tool button is a special button that provides quick-access to specific commands or options. As opposed to a normal command button, a tool button usually doesn’t show a text label, but shows an icon instead.

Tool buttons are normally created when new QAction instances are created with addAction() or existing actions are added to a toolbar with addAction() . It is also possible to construct tool buttons in the same way as any other widget, and arrange them alongside other widgets in layouts.

One classic use of a tool button is to select tools; for example, the “pen” tool in a drawing program. This would be implemented by using a QToolButton as a toggle button (see setCheckable() ).

QToolButton supports auto-raising. In auto-raise mode, the button draws a 3D frame only when the mouse points at it. The feature is automatically turned on when a button is used inside a QToolBar . Change it with setAutoRaise() .

A tool button’s icon is set as QIcon . This makes it possible to specify different pixmaps for the disabled and active state. The disabled pixmap is used when the button’s functionality is not available. The active pixmap is displayed when the button is auto-raised because the mouse pointer is hovering over it.

The button’s look and dimension is adjustable with setToolButtonStyle() and setIconSize() . When used inside a QToolBar in a QMainWindow , the button automatically adjusts to QMainWindow ‘s settings (see setToolButtonStyle() and setIconSize() ). Instead of an icon, a tool button can also display an arrow symbol, specified with arrowType .

A tool button can offer additional choices in a popup menu. The popup menu can be set using setMenu() . Use setPopupMode() to configure the different modes available for tool buttons with a menu set. The default mode is DelayedPopupMode which is sometimes used with the “Back” button in a web browser. After pressing and holding the button down for a while, a menu pops up showing a list of possible pages to jump to. The timeout is style dependent, see SH_ToolButton_PopupDelay .

assistant-toolbar1

Qt Assistant’s toolbar contains tool buttons that are associated with actions used in other parts of the main window.

class QToolButton([parent=None])
param parent

QWidget

Constructs an empty tool button with parent parent .

PySide2.QtWidgets.QToolButton.ToolButtonPopupMode

Describes how a menu should be popped up for tool buttons that has a menu set or contains a list of actions.

Constant

Description

QToolButton.DelayedPopup

After pressing and holding the tool button down for a certain amount of time (the timeout is style dependent, see SH_ToolButton_PopupDelay ), the menu is displayed. A typical application example is the “back” button in some web browsers’s tool bars. If the user clicks it, the browser simply browses back to the previous page. If the user presses and holds the button down for a while, the tool button shows a menu containing the current history list

QToolButton.MenuButtonPopup

In this mode the tool button displays a special arrow to indicate that a menu is present. The menu is displayed when the arrow part of the button is pressed.

QToolButton.InstantPopup

The menu is displayed, without delay, when the tool button is pressed. In this mode, the button’s own action is not triggered.

PySide2.QtWidgets.QToolButton.arrowType()
Return type

ArrowType

See also

setArrowType()

PySide2.QtWidgets.QToolButton.autoRaise()
Return type

bool

See also

setAutoRaise()

PySide2.QtWidgets.QToolButton.defaultAction()
Return type

QAction

Returns the default action.

PySide2.QtWidgets.QToolButton.initStyleOption(option)
Parameters

optionQStyleOptionToolButton

Initialize option with the values from this QToolButton . This method is useful for subclasses when they need a QStyleOptionToolButton , but don’t want to fill in all the information themselves.

See also

initFrom()

PySide2.QtWidgets.QToolButton.menu()
Return type

QMenu

Returns the associated menu, or None if no menu has been defined.

See also

setMenu()

PySide2.QtWidgets.QToolButton.popupMode()
Return type

ToolButtonPopupMode

See also

setPopupMode()

PySide2.QtWidgets.QToolButton.setArrowType(type)
Parameters

typeArrowType

See also

arrowType()

PySide2.QtWidgets.QToolButton.setAutoRaise(enable)
Parameters

enablebool

See also

autoRaise()

PySide2.QtWidgets.QToolButton.setDefaultAction(arg__1)
Parameters

arg__1QAction

Sets the default action to action .

If a tool button has a default action, the action defines the following properties of the button:

Other properties, such as autoRepeat , are not affected by actions.

See also

defaultAction()

PySide2.QtWidgets.QToolButton.setMenu(menu)
Parameters

menuQMenu

Associates the given menu with this tool button.

The menu will be shown according to the button’s popupMode .

Ownership of the menu is not transferred to the tool button.

See also

menu()

PySide2.QtWidgets.QToolButton.setPopupMode(mode)
Parameters

modeToolButtonPopupMode

See also

popupMode()

PySide2.QtWidgets.QToolButton.setToolButtonStyle(style)
Parameters

styleToolButtonStyle

PySide2.QtWidgets.QToolButton.showMenu()

Shows (pops up) the associated popup menu. If there is no such menu, this function does nothing. This function does not return until the popup menu has been closed by the user.

PySide2.QtWidgets.QToolButton.toolButtonStyle()
Return type

ToolButtonStyle

PySide2.QtWidgets.QToolButton.triggered(arg__1)
Parameters

arg__1QAction