QMenu Class
La classe QMenu fournit un widget de menu destiné à être utilisé dans les barres de menus, les menus contextuels et autres menus contextuels. En savoir plus...
| En-tête : | #include <QMenu> |
| 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
| QMenu(QWidget *parent = nullptr) | |
| QMenu(const QString &title, QWidget *parent = nullptr) | |
| virtual | ~QMenu() |
| QAction * | actionAt(const QPoint &pt) const |
| QRect | actionGeometry(QAction *act) const |
| QAction * | activeAction() const |
| QAction * | addMenu(QMenu *menu) |
| QMenu * | addMenu(const QString &title) |
| QMenu * | addMenu(const QIcon &icon, const QString &title) |
| QAction * | addSection(const QString &text) |
| QAction * | addSection(const QIcon &icon, const QString &text) |
| QAction * | addSeparator() |
| void | clear() |
| QAction * | defaultAction() const |
| QAction * | exec() |
| QAction * | exec(const QPoint &p, QAction *action = nullptr) |
| void | hideTearOffMenu() |
| QIcon | icon() const |
| QAction * | insertMenu(QAction *before, QMenu *menu) |
| QAction * | insertSection(QAction *before, const QString &text) |
| QAction * | insertSection(QAction *before, const QIcon &icon, const QString &text) |
| QAction * | insertSeparator(QAction *before) |
| bool | isEmpty() const |
| bool | isTearOffEnabled() const |
| bool | isTearOffMenuVisible() const |
| QAction * | menuAction() const |
| void | popup(const QPoint &p, QAction *atAction = nullptr) |
| bool | separatorsCollapsible() const |
| void | setActiveAction(QAction *act) |
| void | setAsDockMenu() |
| void | setDefaultAction(QAction *act) |
| void | setIcon(const QIcon &icon) |
| void | setSeparatorsCollapsible(bool collapse) |
| void | setTearOffEnabled(bool) |
| void | setTitle(const QString &title) |
| void | setToolTipsVisible(bool visible) |
| void | showTearOffMenu(const QPoint &pos) |
| void | showTearOffMenu() |
| QString | title() const |
| NSMenu * | toNSMenu() |
| bool | toolTipsVisible() const |
Fonctions publiques réimplémentées
| virtual QSize | sizeHint() const override |
Signaux
| void | aboutToHide() |
| void | aboutToShow() |
| void | hovered(QAction *action) |
| void | triggered(QAction *action) |
Membres publics statiques
| QAction * | exec(const QList<QAction *> &actions, const QPoint &pos, QAction *at = nullptr, QWidget *parent = nullptr) |
| QMenu * | menuInAction(const QAction *action) |
Fonctions protégées
| int | columnCount() const |
| virtual void | initStyleOption(QStyleOptionMenuItem *option, const QAction *action) const |
Fonctions protégées réimplémentées
| virtual void | actionEvent(QActionEvent *e) override |
| virtual void | changeEvent(QEvent *e) override |
| virtual void | enterEvent(QEnterEvent *) override |
| virtual bool | event(QEvent *e) override |
| virtual bool | focusNextPrevChild(bool next) override |
| virtual void | hideEvent(QHideEvent *) override |
| virtual void | keyPressEvent(QKeyEvent *e) override |
| virtual void | leaveEvent(QEvent *) override |
| virtual void | mouseMoveEvent(QMouseEvent *e) override |
| virtual void | mousePressEvent(QMouseEvent *e) override |
| virtual void | mouseReleaseEvent(QMouseEvent *e) override |
| virtual void | paintEvent(QPaintEvent *e) override |
| virtual void | timerEvent(QTimerEvent *e) override |
| virtual void | wheelEvent(QWheelEvent *e) override |
Description détaillée

Un widget de menu est un menu de sélection. Il peut s'agir soit d'un menu déroulant dans une barre de menus, soit d'un menu contextuel autonome. Les menus déroulants s'affichent dans la barre de menus lorsque l'utilisateur clique sur l'élément correspondant ou appuie sur la touche de raccourci spécifiée. Utilisez la fonction QMenuBar::addMenu() pour insérer un menu dans une barre de menus. Les menus contextuels sont généralement déclenchés par une touche spéciale du clavier ou par un clic droit. Ils peuvent être exécutés de manière asynchrone avec popup() ou de manière synchrone avec exec(). Les menus peuvent également être déclenchés en réponse à l'action sur un bouton ; ils sont identiques aux menus contextuels, à l'exception de leur mode d'activation.
Actions
Un menu se compose d’une liste d’éléments d’action. Les actions sont ajoutées à l’aide des fonctions addAction(), addActions() et insertAction(). Une action est représentée verticalement et affichée par QStyle. De plus, les actions peuvent comporter une étiquette de texte, une icône facultative dessinée à l’extrême gauche et une combinaison de touches de raccourci telle que « Ctrl+X ».
Les actions existantes d’un menu peuvent être récupérées à l’aide de la fonction actions().
Il existe quatre types d’éléments d’action : les séparateurs, les actions qui affichent un sous-menu, les widgets et les actions qui exécutent une opération. Les séparateurs sont insérés à l’aide de addSeparator(), les sous-menus à l’aide de addMenu(), et tous les autres éléments sont considérés comme des éléments d’action.
Lors de l’insertion d’éléments d’action, on spécifie généralement un récepteur et un slot. Le récepteur est notifié chaque fois que l’élément est triggered(). De plus, QMenu fournit deux signaux, triggered() et hovered(), qui signalent l’ QAction e qui a été déclenchée à partir du menu.
On efface un menu avec ` clear()` et on supprime des éléments d’action individuels avec ` removeAction()`.
Un QMenu peut également fournir un menu détachable. Un menu détachable est une fenêtre de niveau supérieur qui contient une copie du menu. Cela permet à l’utilisateur de « détacher » les menus fréquemment utilisés et de les positionner à un endroit pratique de l’écran. Si vous souhaitez disposer de cette fonctionnalité pour un menu particulier, insérez une poignée de détachement à l’aide de ` setTearOffEnabled()`. Lorsque vous utilisez des menus détachables, gardez à l’esprit que ce concept n’est généralement pas utilisé sous Microsoft Windows ; certains utilisateurs pourraient donc ne pas y être habitués. Envisagez plutôt d’utiliser un ` QToolBar `.
Des widgets peuvent être insérés dans les menus à l’aide de la classe ` QWidgetAction `. Les instances de cette classe servent à contenir des widgets et sont insérées dans les menus via la surcharge de la méthode `addAction()` qui prend en paramètre un ` QAction`. Si l’ QWidgetAction e déclenche le signal ` triggered()`, le menu se fermera.
Avertissement : pour rendre le QMenu visible à l’écran, il convient d’utiliser ` exec()` ou ` popup()` plutôt que ` show()` ou ` setVisible()`. Pour masquer ou désactiver le menu dans la barre de menus, ou dans un autre menu auquel il a été ajouté en tant que sous-menu, utilisez plutôt les propriétés correspondantes de ` menuAction()`.
QMenu sous macOS avec Qt compilé contre Cocoa
QMenu ne peut être inséré qu'une seule fois dans un menu ou une barre de menus. Les insertions suivantes n'auront aucun effet ou entraîneront la désactivation de l'élément de menu.
Consultez l'exemple Menus pour découvrir comment utiliser QMenuBar et QMenu dans votre application.
Fonctions héritées importantes : addAction(), removeAction(), clear(), addSeparator() et addMenu().
Voir également l'exemple «QMenuBar » et « Menus ».
Documentation sur les propriétés
icon : QIcon
Cette propriété contient l'icône du menu
Cela équivaut à la propriété « QAction::icon » de la méthode « menuAction() ».
Par défaut, si aucune icône n’est explicitement définie, cette propriété contient une icône nulle.
Fonctions d'accès :
| QIcon | icon() const |
| void | setIcon(const QIcon &icon) |
separatorsCollapsible : bool
Cette propriété détermine si les séparateurs consécutifs doivent être regroupés
Cette propriété spécifie si les séparateurs consécutifs du menu doivent être visuellement regroupés en un seul. Les séparateurs situés au début ou à la fin du menu sont également masqués.
Par défaut, cette propriété est définie sur « true ».
Fonctions d'accès :
| bool | separatorsCollapsible() const |
| void | setSeparatorsCollapsible(bool collapse) |
tearOffEnabled : bool
Cette propriété indique si le menu peut être détaché
Lorsqu'elle est définie sur « true », le menu contient un élément spécial de détachement (souvent représenté par une ligne pointillée en haut du menu) qui crée une copie du menu lorsqu'il est activé.
Cette copie « détachée » s'affiche dans une fenêtre distincte. Elle contient les mêmes éléments de menu que le menu d'origine, à l'exception de la poignée de détachement.
Par défaut, cette propriété est définie sur « false ».
Fonctions d'accès :
| bool | isTearOffEnabled() const |
| void | setTearOffEnabled(bool) |
title : QString
Cette propriété définit le titre du menu
Elle est équivalente à la propriété « QAction::text » de la méthode « menuAction() ».
Par défaut, cette propriété contient une chaîne vide.
Fonctions d'accès :
| QString | title() const |
| void | setTitle(const QString &title) |
toolTipsVisible : bool
Cette propriété détermine si les infobulles des actions de menu doivent être visibles
Cette propriété spécifie si les entrées du menu d'actions affichent leur info-bulle.
Par défaut, cette propriété est définie sur « false ».
Fonctions d'accès :
| bool | toolTipsVisible() const |
| void | setToolTipsVisible(bool visible) |
Documentation sur les fonctions membres
[explicit] QMenu::QMenu(QWidget *parent = nullptr)
Crée un menu dont le parent est parent.
Bien qu’un menu contextuel soit toujours un widget de niveau supérieur, si un parent lui est transmis, le menu contextuel sera supprimé lorsque ce parent sera détruit (comme pour tout autre QObject).
[explicit] QMenu::QMenu(const QString &title, QWidget *parent = nullptr)
Crée un menu avec une liste déroulante ( title ) et un menu contextuel ( parent).
Bien qu’un menu contextuel soit toujours un widget de niveau supérieur, si un parent lui est transmis, le menu contextuel sera supprimé lorsque ce parent sera détruit (comme pour tout autre QObject).
Voir également title.
[virtual noexcept] QMenu::~QMenu()
Supprime le menu.
[signal] void QMenu::aboutToHide()
Ce signal est émis juste avant que le menu ne soit masqué à l'utilisateur.
Voir également aboutToShow() et hide().
[signal] void QMenu::aboutToShow()
Ce signal est émis juste avant que le menu ne s'affiche à l'écran.
Voir également aboutToHide() et show().
QAction *QMenu::actionAt(const QPoint &pt) const
Renvoie l'élément situé à l'adresse pt; renvoie nullptr s'il n'y a pas d'élément à cette adresse.
[override virtual protected] void QMenu::actionEvent(QActionEvent *e)
Réimplémente : QWidget::actionEvent(QActionEvent *event).
QRect QMenu::actionGeometry(QAction *act) const
Renvoie la géométrie de l'action act.
QAction *QMenu::activeAction() const
Renvoie l'action actuellement sélectionnée, ou ` nullptr ` si aucune action n'est sélectionnée.
Voir aussi setActiveAction().
QAction *QMenu::addMenu(QMenu *menu)
Cette fonction pratique ajoute « menu » en tant que sous-menu à ce menu. Elle renvoie la fonction « menuAction() » de menu. Ce menu ne prend pas possession de menu.
Voir également QWidget::addAction() et QMenu::menuAction().
QMenu *QMenu::addMenu(const QString &title)
Ajoute au menu un nouvel élément « QMenu » avec l'adresse « title ». Le menu en devient propriétaire. Renvoie le nouveau menu.
Voir également QWidget::addAction() et QMenu::menuAction().
QMenu *QMenu::addMenu(const QIcon &icon, const QString &title)
Ajoute au menu une nouvelle entrée « QMenu » avec les liens icon et title. Le menu prend en charge cette entrée. Renvoie le nouveau menu.
Voir également QWidget::addAction() et QMenu::menuAction().
QAction *QMenu::addSection(const QString &text)
Cette fonction pratique crée une nouvelle action de section, c'est-à-dire une action dont la méthode ` QAction::isSeparator()` renvoie `true` mais qui comporte également l'indication ` text `, et ajoute cette nouvelle action à la liste des actions de ce menu. Elle renvoie l'action nouvellement créée.
L’affichage de l’indication dépend du style et de la plateforme. Les styles de widgets peuvent utiliser les informations textuelles dans l’affichage des sections, ou choisir de les ignorer et d’afficher les sections comme de simples séparateurs.
QMenu prend possession de l’ QAction renvoyée.
Voir également ` QWidget::addAction()`.
QAction *QMenu::addSection(const QIcon &icon, const QString &text)
Cette fonction pratique crée une nouvelle action de section, c'est-à-dire une action dont la méthode ` QAction::isSeparator()` renvoie `true`, mais qui comporte également les indications ` text ` et ` icon `, et ajoute cette nouvelle action à la liste des actions de ce menu. Elle renvoie l'action nouvellement créée.
L'affichage des indications dépend du style et de la plateforme. Les styles de widget peuvent utiliser les informations de texte et d’icône lors de l’affichage des sections, ou choisir de les ignorer et d’afficher les sections comme de simples séparateurs.
QMenu prend possession de l’objet ` QAction` renvoyé.
Voir également ` QWidget::addAction()`.
QAction *QMenu::addSeparator()
Cette fonction pratique crée une nouvelle action de séparation, c'est-à-dire une action pour laquelle la méthode QAction::isSeparator() renvoie « true », et ajoute cette nouvelle action à la liste des actions de ce menu. Elle renvoie l'action nouvellement créée.
QMenu prend possession de l'QAction renvoyée.
Voir également QWidget::addAction().
[override virtual protected] void QMenu::changeEvent(QEvent *e)
Réimplémente : QWidget::changeEvent(QEvent *event).
void QMenu::clear()
Supprime toutes les actions du menu. Les actions appartenant au menu et n'apparaissant dans aucun autre widget sont supprimées.
Voir aussi removeAction().
[protected] int QMenu::columnCount() const
Si un menu ne tient pas à l'écran, il s'adapte automatiquement pour y tenir. La manière dont cet ajustement s'effectue dépend du système d'exploitation (par exemple, sous Windows, il s'affichera en plusieurs colonnes).
Cette fonction renvoie le nombre de colonnes nécessaires.
QAction *QMenu::defaultAction() const
Renvoie l'action par défaut actuelle.
Voir également setDefaultAction().
[override virtual protected] void QMenu::enterEvent(QEnterEvent *)
Réimplémente : QWidget::enterEvent(QEnterEvent *event).
[override virtual protected] bool QMenu::event(QEvent *e)
Réimplémente : QWidget::event(QEvent *event).
QAction *QMenu::exec()
Exécute ce menu de manière synchrone.
Cela équivaut à ` exec(pos())`.
Cette fonction renvoie l'QAction déclenché, soit dans le menu contextuel, soit dans l'un de ses sous-menus, ou bien nullptr si aucun élément n'a été déclenché (généralement parce que l'utilisateur a appuyé sur la touche Échap).
Dans la plupart des cas, vous souhaiterez spécifier vous-même la position, par exemple la position actuelle de la souris :
exec(QCursor::pos());ou alignée sur un widget :
exec(somewidget.mapToGlobal(QPoint(0,0)));ou en réaction à une « QMouseEvent *e » :
exec(e->globalPosition().toPoint());QAction *QMenu::exec(const QPoint &p, QAction *action = nullptr)
Exécute ce menu de manière synchrone.
Affiche le menu de manière à ce que l'action action se trouve à la position globale spécifiée p. Pour convertir les coordonnées locales d'un widget en coordonnées globales, utilisez QWidget::mapToGlobal().
Cette fonction renvoie l’ QAction déclenchée, soit dans le menu contextuel, soit dans l’un de ses sous-menus, ou bien nullptr si aucun élément n’a été sélectionné (généralement parce que l’utilisateur a appuyé sur la touche Échap).
Notez que tous les signaux sont émis comme d’habitude. Si vous connectez un QAction à un slot et que vous appelez la fonction exec() du menu, vous obtenez le résultat à la fois via la connexion signal-slot et dans la valeur de retour de exec().
On utilise généralement le menu pour le positionner à l’emplacement actuel de la souris :
exec(QCursor::pos());ou de l’aligner sur un widget :
exec(somewidget.mapToGlobal(QPoint(0, 0)));ou en réaction à un événement *e d’ QMouseEvent:
exec(e->globalPosition().toPoint());Lorsque vous positionnez un menu avec `exec()` ou ` popup()`, gardez à l’esprit que vous ne pouvez pas vous fier à la taille actuelle du menu ( size()). Pour des raisons de performances, le menu n’adapte sa taille qu’en cas de nécessité. Ainsi, dans de nombreux cas, la taille avant et après l’affichage est différente. Utilisez plutôt sizeHint() qui calcule la taille appropriée en fonction du contenu actuel du menu.
Il s'agit d'une fonction surchargée.
Voir également popup() et QWidget::mapToGlobal().
[static] QAction *QMenu::exec(const QList<QAction *> &actions, const QPoint &pos, QAction *at = nullptr, QWidget *parent = nullptr)
Exécute un menu de manière synchrone.
Les actions du menu sont spécifiées par la liste des éléments « actions ». Le menu s'affiche de manière à ce que l'action spécifiée, « at », apparaisse à la position globale « pos ». Si at n’est pas spécifié, le menu s’affiche alors à la position pos. parent est le widget parent du menu ; la spécification du parent fournit un contexte lorsque pos ne suffit pas à lui seul pour déterminer où le menu doit s’afficher (par exemple, en cas de bureaux multiples ou lorsque le parent est intégré dans QGraphicsView).
La fonction renvoie l’ QAction e sélectionné dans le menu contextuel ou l’un de ses sous-menus, ou bien nullptr si aucun élément n’a été sélectionné (généralement parce que l’utilisateur a appuyé sur la touche Échap).
Cela équivaut à :
QMenu menu;
QAction *at = actions[0]; // Assumes actions is not empty
for (QAction *a : std::as_const(actions))
menu.addAction(a);
menu.exec(pos, at);Il s'agit d'une fonction surchargée.
Voir également popup() et QWidget::mapToGlobal().
[override virtual protected] bool QMenu::focusNextPrevChild(bool next)
Réimplémente : QWidget::focusNextPrevChild(bool next).
[override virtual protected] void QMenu::hideEvent(QHideEvent *)
Réimplémente : QWidget::hideEvent(QHideEvent *event).
void QMenu::hideTearOffMenu()
Cette fonction masque de force le menu détaché, le faisant disparaître du bureau de l'utilisateur.
Voir également showTearOffMenu(), isTearOffMenuVisible() et isTearOffEnabled().
[signal] void QMenu::hovered(QAction *action)
Ce signal est émis lorsqu’une action de menu est mise en surbrillance ; ` action ` correspond à l’action qui a provoqué l’émission du signal.
Il est souvent utilisé pour mettre à jour des informations d'état.
Voir également ` triggered()` et ` QAction::hovered()`.
[virtual protected] void QMenu::initStyleOption(QStyleOptionMenuItem *option, const QAction *action) const
Initialisez ` option ` avec les valeurs de ce menu et les informations disponibles sur action. Cette méthode est utile pour les sous-classes qui ont besoin d'un ` QStyleOptionMenuItem`, mais ne souhaitent pas renseigner elles-mêmes toutes les informations.
Voir également QStyleOption::initFrom() et QMenuBar::initStyleOption().
QAction *QMenu::insertMenu(QAction *before, QMenu *menu)
Cette fonction pratique insère menu avant l'action before et renvoie les menus menuAction().
Voir également QWidget::insertAction() et addMenu().
QAction *QMenu::insertSection(QAction *before, const QString &text)
Cette fonction pratique crée une nouvelle action de titre, c'est-à-dire une action dont la méthode ` QAction::isSeparator()` renvoie `true` mais qui comporte également l'indication ` text `. La fonction insère l'action nouvellement créée dans la liste des actions de ce menu, avant l'action ` before `, puis la renvoie.
L’affichage de l’indication dépend du style et de la plateforme. Les styles de widget peuvent utiliser les informations textuelles dans l’affichage des sections, ou choisir de les ignorer et d’afficher les sections comme de simples séparateurs.
QMenu prend possession de l’objet QAction renvoyé.
Voir également ` QWidget::insertAction()` et ` addSection()`.
QAction *QMenu::insertSection(QAction *before, const QIcon &icon, const QString &text)
Cette fonction pratique crée une nouvelle action de titre, c'est-à-dire une action dont la méthode ` QAction::isSeparator()` renvoie `true`, mais qui comporte également les indications ` text ` et ` icon `. La fonction insère l'action nouvellement créée dans la liste des actions de ce menu, avant l'action ` before `, puis la renvoie.
L’affichage des indications dépend du style et de la plateforme. Les styles de widget peuvent utiliser les informations de texte et d’icône dans l’affichage des sections, ou choisir de les ignorer et d’afficher les sections comme de simples séparateurs.
QMenu prend possession de l’objet ` QAction` renvoyé.
Voir également ` QWidget::insertAction()` et ` addSection()`.
QAction *QMenu::insertSeparator(QAction *before)
Cette fonction pratique crée une nouvelle action de séparation, c'est-à-dire une action dont la méthode QAction::isSeparator() renvoie « true ». La fonction insère l'action nouvellement créée dans la liste des actions de ce menu, avant l'action before, puis la renvoie.
QMenu prend possession de l'QAction renvoyée.
Voir également QWidget::insertAction() et addSeparator().
bool QMenu::isEmpty() const
Renvoie « true » s'il n'y a aucune action visible insérée dans le menu, « false » dans le cas contraire.
Voir aussi QWidget::actions().
bool QMenu::isTearOffMenuVisible() const
Lorsqu'un menu est détaché, un deuxième menu s'affiche pour présenter le contenu du menu dans une nouvelle fenêtre. Lorsque le menu est dans ce mode et qu'il est visible, cette fonction renvoie true; sinon, elle renvoie false.
Voir également showTearOffMenu(), hideTearOffMenu() et isTearOffEnabled().
[override virtual protected] void QMenu::keyPressEvent(QKeyEvent *e)
Réimplémente : QWidget::keyPressEvent(QKeyEvent *event).
[override virtual protected] void QMenu::leaveEvent(QEvent *)
Réimplémente : QWidget::leaveEvent(QEvent *event).
QAction *QMenu::menuAction() const
Renvoie l'action associée à ce menu.
[static] QMenu *QMenu::menuInAction(const QAction *action)
Renvoie le menu contenu dans action, ou nullptr si action ne contient pas de menu.
Dans les applications de widgets, les actions contenant des menus peuvent être utilisées pour créer des éléments de menu avec des sous-menus, ou être insérées dans des barres d'outils pour créer des boutons dotés de menus contextuels.
[override virtual protected] void QMenu::mouseMoveEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QMenu::mousePressEvent(QMouseEvent *e)
Réimplémente : QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QMenu::mouseReleaseEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] void QMenu::paintEvent(QPaintEvent *e)
Réimplémente : QWidget::paintEvent(QPaintEvent *event).
void QMenu::popup(const QPoint &p, QAction *atAction = nullptr)
Affiche le menu de manière à ce que l'action atAction se trouve à la position globale spécifiée p. Pour convertir les coordonnées locales d'un widget en coordonnées globales, utilisez la fonction QWidget::mapToGlobal().
Lorsque vous positionnez un menu à l’aide de ` exec()` ou `popup()`, gardez à l’esprit que vous ne pouvez pas vous fier à la position actuelle du menu, renvoyée par ` size()`. Pour des raisons de performances, le menu n’adapte sa taille qu’en cas de nécessité ; ainsi, dans de nombreux cas, la taille avant et après l’affichage est différente. Utilisez plutôt la fonction sizeHint(), qui calcule la taille appropriée en fonction du contenu actuel du menu.
Voir également QWidget::mapToGlobal() et exec().
void QMenu::setActiveAction(QAction *act)
Définit l'action actuellement sélectionnée sur « act ».
Voir également activeAction().
void QMenu::setAsDockMenu()
Configurez ce menu pour qu'il s'affiche lorsque vous cliquez sur l'icône de l'application dans le Dock tout en maintenant la touche Option enfoncée. Disponible uniquement sous macOS.
void QMenu::setDefaultAction(QAction *act)
Cela définit l'action par défaut sur « act ». L'action par défaut peut être accompagnée d'un indicateur visuel, en fonction de l'QStyle. Une action par défaut indique généralement ce qui se produira par défaut lorsqu'un glisser-déposer a lieu.
Voir également defaultAction().
void QMenu::showTearOffMenu(const QPoint &pos)
Cette fonction affiche de force le menu détaché en le faisant apparaître sur le bureau de l'utilisateur à la position globale spécifiée pos.
Voir également hideTearOffMenu(), isTearOffMenuVisible() et isTearOffEnabled().
void QMenu::showTearOffMenu()
Cette fonction affiche de force le menu détaché en le faisant apparaître sur le bureau de l'utilisateur, sous le curseur de la souris.
Il s'agit d'une fonction surchargée.
Voir également hideTearOffMenu(), isTearOffMenuVisible() et isTearOffEnabled().
[override virtual] QSize QMenu::sizeHint() const
Réimplémente une fonction d'accès pour la propriété : QWidget::sizeHint.
[override virtual protected] void QMenu::timerEvent(QTimerEvent *e)
Réimplémente : QObject::timerEvent(QTimerEvent *event).
NSMenu *QMenu::toNSMenu()
Renvoie le NSMenu natif correspondant à ce menu. Disponible uniquement sous macOS.
Remarque : Qt définit le délégué sur le menu natif. Si vous devez définir votre propre délégué, veillez à enregistrer le délégué d'origine et à lui transmettre tous les appels qui lui sont destinés.
[signal] void QMenu::triggered(QAction *action)
Ce signal est émis lorsqu'une action de ce menu est déclenchée.
action est l'action qui a provoqué l'émission du signal.
Normalement, vous connectez le signal ` triggered()` de chaque action de menu à son propre slot personnalisé, mais vous souhaiterez parfois connecter plusieurs actions à un seul slot, par exemple lorsque vous disposez d’un groupe d’actions étroitement liées, telles que « aligner à gauche », « centrer » et « aligner à droite ».
Remarque : ce signal est émis pour le menu parent principal d’une hiérarchie. Par conséquent, seul le menu parent doit être connecté à un slot ; les sous-menus n’ont pas besoin d’être connectés.
Voir également hovered() et QAction::triggered().
[override virtual protected] void QMenu::wheelEvent(QWheelEvent *e)
Réimplémente : ` QWidget::wheelEvent` (`QWheelEvent *event`).
© 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.