Sur cette page

QToolBar Class

La classe QToolBar fournit un panneau déplaçable contenant un ensemble de contrôles. En savoir plus...

En-tête : #include <QToolBar>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Hérite de : QWidget

Propriétés

Fonctions publiques

QToolBar(QWidget *parent = nullptr)
QToolBar(const QString &title, QWidget *parent = nullptr)
virtual ~QToolBar()
QAction *actionAt(const QPoint &p) const
QAction *actionAt(int x, int y) const
QAction *addSeparator()
QAction *addWidget(QWidget *widget)
Qt::ToolBarAreas allowedAreas() const
void clear()
QSize iconSize() const
QAction *insertSeparator(QAction *before)
QAction *insertWidget(QAction *before, QWidget *widget)
bool isAreaAllowed(Qt::ToolBarArea area) const
bool isFloatable() const
bool isFloating() const
bool isMovable() const
Qt::Orientation orientation() const
void setAllowedAreas(Qt::ToolBarAreas areas)
void setFloatable(bool floatable)
void setMovable(bool movable)
void setOrientation(Qt::Orientation orientation)
QAction *toggleViewAction() const
Qt::ToolButtonStyle toolButtonStyle() const
QWidget *widgetForAction(QAction *action) const

Emplacements publics

void setIconSize(const QSize &iconSize)
void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle)

Signaux

void actionTriggered(QAction *action)
void allowedAreasChanged(Qt::ToolBarAreas allowedAreas)
void iconSizeChanged(const QSize &iconSize)
void movableChanged(bool movable)
void orientationChanged(Qt::Orientation orientation)
void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)
void topLevelChanged(bool topLevel)
void visibilityChanged(bool visible)

Fonctions protégées réimplémentées

virtual void actionEvent(QActionEvent *event) override
virtual void changeEvent(QEvent *event) override
virtual bool event(QEvent *event) override
virtual void paintEvent(QPaintEvent *event) override

Description détaillée

Une barre d'outils est généralement créée en appelant QMainWindow::addToolBar(const QString &title), mais elle peut également être ajoutée en tant que premier widget d'un QVBoxLayout, par exemple.

Les boutons de la barre d’outils s’ajoutent en définissant des actions, à l’aide de ` addAction()` ou ` insertAction()`. Les groupes de boutons peuvent être séparés à l'aide de addSeparator() ou insertSeparator(). Si un bouton de barre d’outils ne convient pas, un widget peut être inséré à la place à l’aide de addWidget() ou insertWidget(). Voici quelques exemples de widgets adaptés : QSpinBox, QDoubleSpinBox et QComboBox. Lorsqu’un bouton de barre d’outils est actionné, il émet le signal actionTriggered().

Une barre d’outils peut être fixée à un emplacement précis (par exemple, en haut de la fenêtre), ou elle peut être déplacée d’une zone à l’autre ; voir setMovable(), isMovable(), allowedAreas() et isAreaAllowed().

Lorsqu’une barre d’outils est redimensionnée de telle sorte qu’elle devient trop petite pour afficher tous les éléments qu’elle contient, un bouton d’extension apparaît en tant que dernier élément de la barre d’outils. Un clic sur ce bouton d’extension fait apparaître un menu contextuel contenant les éléments qui ne tiennent pas actuellement dans la barre d’outils.

Lorsqu’une QToolBar n’est pas un enfant d’une QMainWindow, elle ne peut plus remplir le menu contextuel d’extension avec les widgets ajoutés à la barre d’outils à l’aide de la méthode addWidget(). Veuillez utiliser à la place les actions de widget créées en héritant de QWidgetAction et en implémentant la méthode QWidgetAction::createWidget().

Voir également QToolButton, QMenu et QAction.

Documentation sur les propriétés

allowedAreas : Qt::ToolBarAreas

emplacements possibles de la barre d'outils

La valeur par défaut est Qt::AllToolBarAreas.

Cette propriété n'a de sens que si la barre d'outils se trouve dans un QMainWindow.

Fonctions d'accès :

Qt::ToolBarAreas allowedAreas() const
void setAllowedAreas(Qt::ToolBarAreas areas)

Signal de notification :

void allowedAreasChanged(Qt::ToolBarAreas allowedAreas)

Voir également movable.

floatable : bool

Cette propriété détermine si la barre d'outils peut être déplacée et déposée en tant que fenêtre indépendante.

La valeur par défaut est true.

Fonctions d'accès :

bool isFloatable() const
void setFloatable(bool floatable)

[read-only] floating : bool

Cette propriété indique si la barre d'outils est une fenêtre indépendante.

Par défaut, cette propriété est définie sur « true ».

Fonctions d'accès :

bool isFloating() const

Voir également QWidget::isWindow().

iconSize : QSize

taille des icônes dans la barre d'outils.

La taille par défaut est déterminée par le style de l’application et découle de la métrique en pixels « QStyle::PM_ToolBarIconSize ». Il s’agit de la taille maximale qu’une icône peut atteindre. Les icônes de taille inférieure ne seront pas agrandies.

Fonctions d'accès :

QSize iconSize() const
void setIconSize(const QSize &iconSize)

Signal de notification :

void iconSizeChanged(const QSize &iconSize)

movable : bool

Cette propriété détermine si l'utilisateur peut déplacer la barre d'outils au sein d'une même zone de barre d'outils ou d'une zone à l'autre.

La valeur par défaut dépend du style (déterminée par l'indicateur de style « QStyle::SH_ToolBar_Movable ») et est « true » pour la plupart des styles.

Cette propriété n'a de sens que si la barre d'outils se trouve dans un QMainWindow.

Fonctions d'accès :

bool isMovable() const
void setMovable(bool movable)

Signal de notification :

void movableChanged(bool movable)

Voir également ` allowedAreas`.

orientation : Qt::Orientation

orientation de la barre d'outils

La valeur par défaut est Qt::Horizontal.

Cette fonction ne doit pas être utilisée lorsque la barre d'outils est gérée par QMainWindow. Vous pouvez utiliser QMainWindow::addToolBar() ou QMainWindow::insertToolBar() si vous souhaitez déplacer une barre d'outils déjà ajoutée à une fenêtre principale vers une autre Qt::ToolBarArea.

Fonctions d'accès :

Qt::Orientation orientation() const
void setOrientation(Qt::Orientation orientation)

Signal de notification :

void orientationChanged(Qt::Orientation orientation)

toolButtonStyle : Qt::ToolButtonStyle

Cette propriété définit le style des boutons de la barre d'outils

Cette propriété définit le style de tous les boutons d’outils ajoutés en tant qu’ QActions. Notez que si vous ajoutez un QToolButton à l’aide de la méthode addWidget(), celui-ci n’héritera pas de ce style de bouton.

Pour que le style des boutons d’outils respecte les paramètres système, définissez cette propriété sur ` Qt::ToolButtonFollowStyle`. Sous Unix, les paramètres utilisateur de l’environnement de bureau seront utilisés. Sur les autres plateformes, ` Qt::ToolButtonFollowStyle ` signifie « icône uniquement ».

La valeur par défaut est « Qt::ToolButtonIconOnly ».

Fonctions d'accès :

Qt::ToolButtonStyle toolButtonStyle() const
void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle)

Signal de notification :

void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)

Documentation des fonctions membres

[explicit] QToolBar::QToolBar(QWidget *parent = nullptr)

Crée une barre d'outils (QToolBar) avec l'parent on fournie.

[explicit] QToolBar::QToolBar(const QString &title, QWidget *parent = nullptr)

Crée une barre d'outils QToolBar avec l'parent spécifiée.

L'title de fenêtre fournie identifie la barre d'outils et s'affiche dans le menu contextuel fourni par QMainWindow.

Voir également setWindowTitle().

[virtual noexcept] QToolBar::~QToolBar()

Supprime la barre d'outils.

QAction *QToolBar::actionAt(const QPoint &p) const

Renvoie l'action associée au point p. Cette fonction renvoie zéro si aucune action n'a été trouvée.

Voir également QWidget::childAt().

QAction *QToolBar::actionAt(int x, int y) const

Renvoie l’action associée au point x, y. Cette fonction renvoie zéro si aucune action n’a été trouvée.

Il s'agit d'une fonction surchargée.

[override virtual protected] void QToolBar::actionEvent(QActionEvent *event)

Réimplémente : QWidget::actionEvent(QActionEvent *event).

[signal] void QToolBar::actionTriggered(QAction *action)

Ce signal est émis lorsqu'une action de cette barre d'outils est déclenchée. Cela se produit lorsque l'on clique sur le bouton correspondant à l'action ou lorsque celle-ci est déclenchée d'une autre manière en dehors de la barre d'outils. Le paramètre contient l'action s relatives à l'action déclenchée.

QAction *QToolBar::addSeparator()

Ajoute un séparateur à la fin de la barre d'outils.

Voir aussi insertSeparator().

QAction *QToolBar::addWidget(QWidget *widget)

Ajoute l'widget on indiquée à la barre d'outils en tant que dernier élément de celle-ci.

La barre d'outils prend possession de l'widget.

Si vous ajoutez un QToolButton à l’aide de cette méthode, l’ Qt::ToolButtonStyle de la barre d’outils ne sera pas respectée.

Remarque : vous devez utiliser ` QAction::setVisible()` pour modifier la visibilité du widget. L’utilisation de ` QWidget::setVisible()`, ` QWidget::show()` et ` QWidget::hide()` ne fonctionne pas.

Voir également insertWidget().

[signal] void QToolBar::allowedAreasChanged(Qt::ToolBarAreas allowedAreas)

Ce signal est émis lorsque l'ensemble des zones autorisées pour la barre d'outils est modifié. Les nouvelles zones dans lesquelles la barre d'outils peut être positionnée sont spécifiées par allowedAreas.

Remarque : signalde notification pour la propriété allowedAreas.

Voir également allowedAreas.

[override virtual protected] void QToolBar::changeEvent(QEvent *event)

Réimplémente : QWidget::changeEvent(QEvent *event).

void QToolBar::clear()

Supprime toutes les actions de la barre d'outils.

Voir aussi removeAction().

[override virtual protected] bool QToolBar::event(QEvent *event)

Réimplémente : QWidget::event(QEvent *event).

[signal] void QToolBar::iconSizeChanged(const QSize &iconSize)

Ce signal est émis lorsque la taille des icônes est modifiée. Le paramètre ` iconSize ` contient la nouvelle taille des icônes de la barre d'outils.

Remarque : signalde notification pour la propriété ` iconSize`.

Voir également iconSize et QMainWindow::iconSize.

QAction *QToolBar::insertSeparator(QAction *before)

Insère un séparateur dans la barre d'outils, devant l'élément de la barre d'outils associé à l'action « before ».

Voir aussi addSeparator().

QAction *QToolBar::insertWidget(QAction *before, QWidget *widget)

Insère l'widget on indiquée devant l'élément de la barre d'outils associé à l'action before.

Remarque : vous devez utiliser la fonction ` QAction::setVisible()` pour modifier la visibilité du widget. L'utilisation des fonctions ` QWidget::setVisible()`, ` QWidget::show()` et ` QWidget::hide()` ne fonctionne pas.

Voir également addWidget().

bool QToolBar::isAreaAllowed(Qt::ToolBarArea area) const

Renvoie « true » si cette barre d'outils peut être ancrée dans l'area indiquée ; sinon, renvoie « false ».

[signal] void QToolBar::movableChanged(bool movable)

Ce signal est émis lorsque la barre d'outils devient déplaçable ou fixe. Si la barre d'outils peut être déplacée, la propriété ` movable ` vaut `true` ; sinon, elle vaut `false`.

Remarque : signalde notification pour la propriété movable.

Voir également movable.

[signal] void QToolBar::orientationChanged(Qt::Orientation orientation)

Ce signal est émis lorsque l'orientation de la barre d'outils change. Le paramètre orientation contient la nouvelle orientation de la barre d'outils.

Remarque : signalde notification pour la propriété orientation.

Voir également orientation.

[override virtual protected] void QToolBar::paintEvent(QPaintEvent *event)

Réimplémente : QWidget::paintEvent(QPaintEvent *event).

QAction *QToolBar::toggleViewAction() const

Renvoie une action vérifiable permettant d'afficher ou de masquer cette barre d'outils.

Le texte de l'action correspond au titre de la fenêtre de la barre d'outils.

Voir également QAction::text et QWidget::windowTitle.

[signal] void QToolBar::toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)

Ce signal est émis lorsque le style d'un bouton d'outil est modifié. Le paramètre toolButtonStyle contient le nouveau style du bouton d'outil de la barre d'outils.

Remarque : signalde notification pour la propriété toolButtonStyle.

Voir également ` toolButtonStyle ` et ` QMainWindow::toolButtonStyle`.

[signal] void QToolBar::topLevelChanged(bool topLevel)

Ce signal est émis lorsque la propriété ` floating ` change. Le paramètre ` topLevel ` prend la valeur `true` si la barre d'outils est désormais flottante ; dans le cas contraire, il prend la valeur `false`.

Voir également isWindow().

[signal] void QToolBar::visibilityChanged(bool visible)

Ce signal est émis lorsque la barre d'outils devient « visible » (ou invisible). Cela se produit lorsque le widget est masqué ou affiché.

QWidget *QToolBar::widgetForAction(QAction *action) const

Renvoie le widget associé à l'action spécifiée.

Voir aussi addWidget().

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