Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

Vous n'avez pas encore de compte Developpez.com ? L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Developpez.com

Qt

Choisissez la catégorie, puis la rubrique :

Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QMessageBox

La classe QMessageBox fournit une boîte de dialogue modale pour informer l'utilisateur ou lui poser une question et recevoir une réponse. Plus d'informations...

 #include <QMessageBox>

Héritage

Hérite de QDialog.

Description détaillée

La classe QMessageBox fournit une boîte de dialogue modale pour informer l'utilisateur ou lui poser une question et recevoir une réponse.

Une QMessageBox (boîte de message) affiche un texte principal pour alerter l'utilisateur d'une situation, un texte informatif pour expliquer d'avantage l'alerte ou pour poser une question à l'utilisateur et un texte détaillé optionnel pour fournir encore plus d'informations si l'utilisateur le demande. Une boîte de message peut également afficher une icône et des boutons standard pour accepter la réponse de l'utilisateur.

Deux API pour utiliser QMessageBox sont fournies, l'API basée sur les propriétés et les fonctions statiques. L'appel d'une des fonctions statiques est l'approche la plus simple, mais elle est moins flexible que d'utiliser l'API basée sur les propriétés et le résultat contient moins d'informations. Il est recommandé d'utiliser l'API basée sur les propriétés.

L'API basée sur les propriétés

Pour utiliser l'API basée sur les propriétés, construisez une instance de QMessageBox, définissez les propriétés désirées et appelez exec() pour afficher le message. La configuration la plus simple est de définir uniquement la propriété message text.

 QMessageBox msgBox;
 msgBox.setText("Le document a été modifié.");
 msgBox.exec();

L'utilisateur doit cliquer sur le bouton OK pour fermer la boîte de dialogue. Le reste de la l'interface utilisateur est bloqué jusqu'à ce que la boîte de dialogue soit fermée.

image

Une meilleure approche que de simplement avertir l'utilisateur d'un événement est d'également lui demander ce qu'il veut faire. Stockez la question dans la propriété texte informatif et définissez la propriété boutons standard en fonction des réponses possibles de l'utilisateur. Les boutons sont spécifiés par des combinaisons de valeurs de StandardButtons utilisant l'opérateur bit à bit OU. L'ordre d'affichage des boutons dépend de la plateforme. Par exemple, sur Windows, Enregistrer est affiché à la gauche de Annuler, alors que sur Mac OS, l'ordre est inversé.

Marquez un de vos boutons standard comme étant le bouton par défaut.

 QMessageBox msgBox;
 msgBox.setText("Le document a été modifié.");
 msgBox.setInformativeText("Voulez-vous enregistrer les changements ?");
 msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
 msgBox.setDefaultButton(QMessageBox::Save);
 int ret = msgBox.exec();

Ceci est l'approche recommandée dans Directives Mac OS X. Des directives similaires s'appliquent pour d'autres plateformes, mais notez les différentes manières dont le texte informatif est présenté sur différentes plateformes.

image

Le slot exec() retourne la valeur StandardButtons du bouton qui a été cliqué.

 switch (ret) {
   case QMessageBox::Save:
       // Clic sur Enregistrer
       break;
   case QMessageBox::Discard:
       // Clic sur Ne pas enregistrer
       break;
   case QMessageBox::Cancel:
       // Clic sur Annuler
       break;
   default:
       // ne doit pas se produire
       break;
 }

Pour donner à l'utilisateur plus d'informations pour l'aider à répondre à la question, définissez la propriété texte détaillé. Si la propriété detailed text est définie, le bouton Afficher les détails... sera affiché.

image

Cliquer sur le bouton Afficher les détails... affiche le texte détaillé.

image

Texte enrichi et propriété de format de texte

La propriété texte détaillé est toujours interprétée comme du texte brut. Les propriétés texte principal et texte informatif peuvent être soit du texte brut soit du texte enrichi. Ces chaînes de caractères sont interprétées en fonction de la propriété format de texte. La valeur par défaut est auto-text.

Notez que pour certains textes bruts contenant des métacaractères XML, le test de détection de texte enrichi (auto-text) peut échouer et causer l'interprétation incorrecte du texte brut comme du texte enrichi. Dans ces rares cas, utilisez Qt::convertFromPlainText() pour convertir votre texte brut en un texte enrichi visuellement équivalent ou spécifiez explicitement la propriété format de texte avec setTextFormat().

Niveaux de gravité et les propriétés icône et pixmap

QMessageBox gère quatre niveaux de gravité de message ou types de message, qui diffèrent uniquement par l'icône prédéfini qu'ils affichent. Spécifiez un des quatre types de message prédéfinis en définissant la propriété icon à l'une des icônes prédéfinies. Utilisez comme guide les règles suivantes :

image Question Pour poser une question durant les opérations normales.
image Information Pour donner une information à propos des opérations normales.
image Warning Pour signaler les erreurs non critiques.
image Critical Pour signaler les erreurs critiques.

Les icônes prédéfinies ne sont pas définies par QMessageBox mais sont fournies par le style. La valeur par défaut est No Icon. Pour le reste, les boîtes de message sont les mêmes dans tous les cas. Lors de l'utilisation d'une icône standard, utilisez l'une de celles recommandées dans le tableau ou utilisez l'une de celles recommandées par les directives de style de votre plateforme. Si aucune des icônes standard ne convient pour votre boîte de message, vous pouvez utiliser une icône personnalisée en définissant la propriété pixmap d'icône plutôt que la propriété icône.

En résumé, pour spécifier une icône, utilisez soit setIcon() pour l'une des quatre icônes standard, soit setIconPixmap() pour une icône personnalisée.

L'API des fonctions statiques

Construire les boîtes de message avec l'API des fonctions statiques, bien que pratique, est moins flexible que d'utiliser l'API basée sur les propriétés, parce que les signatures des fonctions statiques n'ont pas de paramètres pour indiquer les propriétés texte informatif et texte détaillé. Une manière de contourner cette absence est d'utiliser le paramètre title comme texte principal de la boîte de message et le paramètre text comme texte d'information. Comme ceci a l'inconvénient évident de rendre la boîte de message moins lisible, les directives de la plateforme le déconseillent. Le Microsoft Windows User Interface Guidelines recommande d'utiliser le nom de l'application en tant que titre de fenêtre, ce qui signifie que si vous avez un texte d'information en plus de votre texte principal, vous devrez le concaténer au paramètre text.

Notez que dans les signatures des fonctions statiques, les paramètres de boutons ont changé, ils sont maintenant utilisés pour définir les boutons standard et le bouton par défaut.

Des fonctions statiques existent pour la création des boîtes de message information(), question(), warning() et critical().

 int ret = QMessageBox::warning(this, tr("My Application"),
                                tr("Le document a été modifié.\n"
                                   "Voulez-vous enregistrer les changements ?"),
                                QMessageBox::Save | QMessageBox::Discard
                                | QMessageBox::Cancel,
                                QMessageBox::Save);

L'exemple Boîtes de dialogue standard montre comment utiliser QMessageBox et les autres boîtes de dialogue de Qt.

Utilisation avancée

Si les boutons standard ne sont pas assez flexibles pour votre boîte de message, vous pouvez utiliser la variante de la méthode addButton() prenant en paramètres un texte et un rôle de bouton pour ajouter des boutons personnalisés. Le ButtonRole est utilisé par QMessageBox pour déterminer l'ordre des boutons à l'écran (lequel varie en fonction de la plateforme). Vous pouvez tester la valeur de clickedButton() après un appel à exec(). Par exemple,

 QMessageBox msgBox;
 QPushButton *connectButton = msgBox.addButton(tr("Connect"), QMessageBox::ActionRole);
 QPushButton *abortButton = msgBox.addButton(QMessageBox::Abort);
 
 msgBox.exec();
 
 if (msgBox.clickedButton() == connectButton) {
     // connect
 } else if (msgBox.clickedButton() == abortButton) {
     // abort
 }

Les touches par défaut et d?échappement

Le bouton par défaut(c'est-à-dire le bouton activé lorsque la touche Entrée est appuyée) peut être spécifié en utilisant setDefaultButton(). Si aucun bouton par défaut n'est spécifié, QMessageBox tente d'en trouver un en se basant sur le rôle des boutons utilisés.

Le bouton d'échappement (le bouton activé lorsque la touche Echap est appuyée) peut être spécifié en utilisant setEscapeButton(). Si aucun bouton d'échappement n'est spécifié, QMessageBox tente d'en trouver un en suivant les règles suivantes :

  1. S'il n'y a qu'un seul bouton, c'est ce bouton qui est activé lors d'un appui sur Echap ;
  2. S'il y a un bouton Annuler, c'est ce bouton qui est activé lors d'un appui sur Echap ;
  3. S'il n'y a qu'un seul bouton avec soit le rôle Reject, soit le rôle No role, c'est ce bouton qui est activé lors d'un appui sur Echap.

Lorsque le bouton d'échappement ne peut être déterminé en utilisant ces règles, l'appui sur la touche Echap est sans effet.

Voir aussi QDialogButtonBox, GUI Design Handbook: Message Box, Exemple de boîtes de dialogue standard et Exemple d'application.

Type

enum QMessageBox::ButtonRole

Cette énumération décrit les rôles qui peuvent être utilisés pour décrire les boutons. Les combinaisons de ces rôles sous forme de drapeaux sont utilisées pour décrire les différents aspects de leur comportement.

Constante Valeur Description
QMessageBox::InvalidRole -1 Le bouton est invalide.
QMessageBox::AcceptRole   Cliquer sur le bouton implique que la boîte de dialogue est acceptée (par exemple « OK »).
QMessageBox::RejectRole 1 Cliquer sur le bouton implique que la boîte de dialogue est annulée (par exemple « Annuler »).
QMessageBox::DestructiveRole 2 Cliquer sur le bouton cause un changement destructeur (par exemple, « Abandonner les modifications ») et ferme la boîte de dialogue.
QMessageBox::ActionRole 3 Cliquer sur ??le bouton provoque des changements sur les éléments dans la boîte de dialogue.
QMessageBox::HelpRole 4 Le bouton peut être cliqué pour demander l'affichage d'une aide.
QMessageBox::YesRole 5 Le bouton est un bouton « Oui ».
QMessageBox::NoRole 6 Le bouton est un bouton « Non ».
QMessageBox::ApplyRole 8 Le bouton applique les changements courants.
QMessageBox::ResetRole 7 Le bouton réinitialise les champs de la boîte de dialogue à leur valeur par défaut.

Voir aussi StandardButton.

enum QMessageBox::Icon

Cette énumération peut prendre les valeurs suivantes :

Constante Valeur Description
QMessageBox::NoIcon   La boîte de dialogue n'a pas d'icône.
QMessageBox::Question 4 Une icône indique que le message est une question.
QMessageBox::Information 1 Une icône indique que le message est une information ordinaire.
QMessageBox::Warning 2 Une icône indique que le message est un avertissement mais qu'il est tout de même possible de continuer.
QMessageBox::Critical 3 Une icône indique que le message représente un problème critique.

enum QMessageBox::StandardButtonflags QMessageBox::StandardButtons

Ces énumérations décrivent les drapeaux pour les boutons standard. Chaque bouton possède un rôle défini.

Constante Valeur Description
QMessageBox::Ok 0x00000400 Un bouton « OK » défini avec le rôle AcceptRole.
QMessageBox::Open 0x00002000 Un bouton « Ouvrir » défini avec le rôle AcceptRole.
QMessageBox::Save 0x00000800 Un bouton « Sauver » défini avec le rôle AcceptRole.
QMessageBox::Cancel 0x00400000 Un bouton « Annuler » défini avec le rôle RejectRole.
QMessageBox::Close 0x00200000 Un bouton « Fermer » défini avec le rôle RejectRole.
QMessageBox::Discard 0x00800000 Un bouton « Abandonner » ou « Ne pas sauvegarder », suivant la plateforme, défini avec le rôle DestructiveRole.
QMessageBox::Apply 0x02000000 Un bouton « Appliquer » défini avec le rôle ApplyRole.
QMessageBox::Reset 0x04000000 Un bouton « Réinitialiser » défini avec le rôle ResetRole.
QMessageBox::RestoreDefaults 0x08000000 Un bouton « Restaurer les valeurs par défaut » défini avec le rôle ResetRole.
QMessageBox::Help 0x01000000 Un bouton « Aide » défini avec le rôle HelpRole.
QMessageBox::SaveAll 0x00001000 Un bouton « Tout sauvegarder » défini avec le rôle AcceptRole.
QMessageBox::Yes 0x00004000 Un bouton « Oui » défini avec le rôle YesRole.
QMessageBox::YesToAll 0x00008000 Un bouton « Oui à tout » défini avec le rôle YesRole.
QMessageBox::No 0x00010000 Un bouton « Non » défini avec le rôle NoRole.
QMessageBox::NoToAll 0x00020000 Un bouton « Non à tout » défini avec le rôle NoRole.
QMessageBox::Abort 0x00040000 Un bouton « Annuler » défini avec le rôle RejectRole.
QMessageBox::Retry 0x00080000 Un bouton « Réessayer » défini avec le rôle AcceptRole.
QMessageBox::Ignore 0x00100000 Un bouton « Ignorer » défini avec le rôle AcceptRole.
QMessageBox::NoButton 0x00000000 Un bouton invalide

Les valeurs suivantes sont obsolètes :

Constante Valeur Description
QMessageBox::YesAll YesToAll Utilisez YesToAll à la place.
QMessageBox::NoAll NoToAll Utilisez NoToAll à la place.
QMessageBox::Default 0x00000100 Utilisez l'argument defaultButton de information(), warning(), etc. à la place ou appeler setDefaultButton().
QMessageBox::Escape 0x00000200 Appelez setEscapeButton() à la place.
QMessageBox::FlagMask 0x00000300
QMessageBox::ButtonMask ~FlagMask

Cette énumération a été introduite ou modifiée dans Qt 4.2.

Le type StandardButtons est un typedef pour QFlags<StandardButton>. Il contient une combinaison OU de valeurs de StandardButton.

Voir aussi ButtonRole et standardButtons.

Propriétés

detailedText : QString

Cette propriété contient le texte qui doit être affiché dans la zone de détail.

Le texte sera interprété comme un texte brut.

Par défaut, cette propriété contient une chaîne vide.

Cette classe a été introduite dans Qt 4.2.

Fonction d'accès

QString detailedText () const

void setDetailedText ( const QString & text )

Voir aussi QMessageBox::text and QMessageBox::informativeText.

icon : Icon

Cette propriété contient l'icône de la boîte de dialogue.

L'icône de la boîte de message peut être spécifié avec l'une de ces valeurs :

La valeur par défaut est QMessageBox::NoIcon.

La pixmap utilisée pour afficher l'icône actuelle dépend du style courant . Vous pouvez aussi spécifier une pixmap personnalisée en tant qu'icône en utilisant la propriété pixmap de l'icône.

Fonction d'accès

Icon icon () const

void setIcon ( Icon )

Voir aussi iconPixmap.

iconPixmap : QPixmap

Cette propriété contient l'icône courante.

L'icône utilisée par la boîte de message. Notez qu'il est souvent difficile de dessiner une pixmap adaptée à tous les styles d'interface utilisateur ; vous aurez peut-être à fournir une pixmap différente pour chaque plateforme.

Par défaut, cette propriété n'est pas définie.

Fonction d'accès

QPixmap iconPixmap () const

void setIconPixmap ( const QPixmap & pixmap )

Voir aussi icon.

informativeText : QString

Cette propriété contient le texte d'information qui fournit une description plus complète pour le message.

Le texte d'information peut être utilisé pour développer le text() afin de fournir plus d'informations à l'utilisateur. Sur Mac, ce texte apparaît en petite police système sous le text(). Sur les autres systèmes, il est simplement ajouté au texte existant.

Par défaut, cette propriété contient une chaîne vide.

Cette classe a été introduite dans Qt 4.2.

Fonction d'accès

QString informativeText () const

void setInformativeText ( const QString & text )

Voir aussi QMessageBox::text et QMessageBox::detailedText.

standardButtons : StandardButtons

Cette propriété contient la collection de boutons standard de la boîte de message.

Cette propriété contrôle quels boutons standard sont utilisés par la boîte de message.

Par défaut, cette propriété ne contient aucun des boutons standard.

Cette classe a été introduite dans Qt 4.2.

Fonction d'accès

StandardButtons standardButtons () const

void setStandardButtons ( StandardButtons buttons )

Voir aussi addButton().

text : QString

Cette propriété contient le texte à afficher dans la boîte de message.

Le texte sera interprété soit comme du texte brut, soit comme du texte enrichi, en fonction du format de texte spécifié par (QMessageBox::textFormat). Par défaut, le format est Qt::AutoText, c'est-à-dire que la boîte de message tentera de détecter automatiquement le format du texte.

La valeur par défaut de cette propriété est une chaîne vide.

Fonction d'accès

QString text () const

void setText ( const QString & text )

Voir aussi textFormat, QMessageBox::informativeText et QMessageBox::detailedText.

textFormat : Qt::TextFormat

Cette propriété contient le format du texte affiché.

Le format du texte courant utilisé dans la boîte de message. Voir l'énumération Qt::TextFormat pour une explication des options possibles.

Le format par défaut est Qt::AutoText.

Fonction d'accès

Qt::TextFormat textFormat () const

void setTextFormat ( Qt::TextFormat format )

Voir aussi setText().

Fonctions membres

QMessageBox::QMessageBox ( QWidget * parent = 0 )

Construit une boîte de message sans texte ni bouton. parent est passé au constructeur de QDialog

Sur Mac OS X, si vous voulez faire apparaître votre boîte de message comme une Qt::Sheet (feuille) de son parent, spécifiez Qt::WindowModal comme modalité de la boîte de message ou utilisez open(). Sinon, la boîte de message sera une boite de dialogue standard.

QMessageBox::QMessageBox ( Icon icon, const QString & title, const QString & text, StandardButtons buttons = NoButton, QWidget * parent = 0, Qt::WindowFlags f = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint )

Construit une boîte de message avec l'icône icon, le titre title et les boutons standard buttons. Des boutons standard ou personnalisés peuvent être ajoutés à tout moment en utilisant addButton(). Les arguments parent et f sont passés au constructeur de QDialog.

La boîte de message est une boîte de dialogue modale à l'application.

Sur Mac OS X, si parent ne vaut pas 0 et que vous voulez faire apparaître votre boîte de message comme une Qt::Sheet de son parent, spécifiez Qt::WindowModal comme modalité de la boîte de message (valeur par défaut). Sinon, la boîte de message sera une boîte de dialogue standard.

Voir aussi setWindowTitle(), setText(), setIcon() et setStandardButtons().

QMessageBox::~QMessageBox ()

Détruit la boîte de message.

void QMessageBox::about ( QWidget * parent, const QString & title, const QString & text ) [static]

Affiche une simple boîte de message « à propos » avec le titre title et le texte text. Le parent de la boîte de dialogue est parent.

about() regarde dans quatre emplacement pour trouver un icône adapté :

  1. Il préférera parent->icon() s'il existe ;
  2. Sinon, il tentera celui du widget de plus haut niveau contenant parent ;
  3. S'il échoue, il tentera celui de la fenêtre active ;
  4. En dernier recours, il utilisera l'icône d'information.

La boîte de dialogue « À propos » possède un seul bouton « OK ». Sur Mac OS X, la boîte de dialogue « À propos » est modale à la fenêtre ; sur les autres plateformes elle est actuellement modale à l'application.

Voir aussi QWidget::windowIcon() et QApplication::activeWindow().

void QMessageBox::aboutQt ( QWidget * parent, const QString & title = QString() ) [static]

Affiche une simple boîte de message à propos de Qt avec le titre title et centré sur parent (si parent ne vaut pas 0). Le message inclut le numéro de version de Qt utilisée par l'application.

C'est très utile pour l'inclusion dans le menu Aide de l'application, comme montré dans l'exemple Menus.

QApplication fournit cette fonctionnalité sous forme d'un slot.

Sur Mac OS X, la boîte de dialogue « À propos » est modale à la fenêtre ; sur les autres plateformes elle est actuellement modale à l'application.

Voir aussi QApplication::aboutQt().

void QMessageBox::addButton ( QAbstractButton * button, ButtonRole role )

Ajoute le bouton button à la boîte de message avec le role spécifié.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi removeButton(), button() et setStandardButtons().

QPushButton * QMessageBox::addButton ( const QString & text, ButtonRole role )

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

Crée un bouton avec le texte text, l'ajoute à la boîte de message avec le role spécifié et le retourne.

Cette fonction a été introduite dans Qt 4.2.

QPushButton * QMessageBox::addButton ( StandardButton button )

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

Ajoute un bouton standard button à la boîte de message si cette opération est valide, et retourne le bouton.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi setStandardButtons().

QAbstractButton * QMessageBox::button ( StandardButton which ) const

Retourne un pointeur correspondant au bouton standard which ou 0 si le bouton standard n'existe pas dans la boîte de message.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi standardButtons et standardButton().

void QMessageBox::buttonClicked ( QAbstractButton * button ) [signal]

Ce signal est émis dès qu'un bouton est cliqué dans le QMessageBox. Le bouton qui a été cliqué est retourné dans bouton.

ButtonRole QMessageBox::buttonRole ( QAbstractButton * button ) const

Retourne le rôle du bouton pour le bouton button spécifié. Cette fonction retourne InvalidRole si button vaut 0 ou s'il n'a pas été ajouté à la boîte de message.

Cette fonction a été introduite dans Qt 4.5.

Voir aussi buttons() and addButton().

QList<QAbstractButton *> QMessageBox::buttons () const

Retourne une liste de tous les boutons qui ont été ajoutés à la boîte de message.

Cette fonction a été introduite dans Qt 4.5.

Voir aussi buttonRole(), addButton() et removeButton().

void QMessageBox::changeEvent ( QEvent * ev ) [virtual protected]

Réimplémentation de QWidget::changeEvent().

QAbstractButton * QMessageBox::clickedButton () const

Retourne le bouton qui a été cliqué par l'utilisateur ou 0 si l'utilisateur appuie sur la touche Echap et qu'il n'y a pas de bouton d'échappement.

Si exec() n'a pas encore été appelée, retourne 0.

Exemple:

 QMessageBox messageBox(this);
 QAbstractButton *disconnectButton =
       messageBox.addButton(tr("Disconnect"), QMessageBox::ActionRole);
 ...
 messageBox.exec();
 if (messageBox.clickedButton() == disconnectButton) {
     ...
 }

Cette fonction a été introduite dans Qt 4.2.

Voir aussi standardButton() et button().

void QMessageBox::closeEvent ( QCloseEvent * e ) [virtual protected]

Réimplémentation de QWidget::closeEvent().

StandardButton QMessageBox::critical ( QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton ) [static]

Ouvre une boîte de message critique avec le titre spécifié par title et le texte text. Les boutons standard buttons sont ajoutés à la boîte de message. defaultButton spécifie le bouton utilisé lors d'un appui sur la touche Entrée. defaultButton doit faire référence à un bouton qui fait partie de buttons. Si defaultButton est QMessageBox::NoButton, QMessageBox choisira automatiquement une valeur par défaut appropriée.

Retourne l'identité du bouton standard cliqué. Si Echap a été appuyée, retourne le bouton d'échappement.

La boîte de message est une boîte de dialogue de type modale à l'application.

Attention : ne détruisez pas parent durant l'exécution de la boîte de dialogue. Si vous voulez le faire, vous devez créer la boîte de dialogue vous-même en utilisant un des constructeurs de QMessageBox.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi question(), warning() et information().

QPushButton * QMessageBox::defaultButton () const

Retourne le bouton qui devrait être le bouton par défaut. Retourne 0 si aucun bouton par défaut n'a été spécifié.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi setDefaultButton(), addButton() et QPushButton::setDefault().

QAbstractButton * QMessageBox::escapeButton () const

Retourne le bouton qui sera activé lors d'un appui sur la touche d'échappement.

Par défaut, QMessageBox tente de détecter automatiquement un bouton d'échappement comme suit :

  1. S'il n'y a qu'un seul bouton, ce sera le bouton d'échappement.
  2. S'il y a un bouton Annuler, il sera le bouton d'échappement.
  3. Sur Max OS X uniquement, s'il y a exactement un bouton avec le rôle QMessageBox::RejectRole, ce sera le bouton d'échappement.

Lorsqu'aucun bouton d'échappement ne peut être automatiquement détecté, un appui sur Echap n'a aucun effet.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi setEscapeButton() et addButton().

bool QMessageBox::event ( QEvent * e ) [virtual protected]

Réimplémentation de QObject::event().

int QMessageBox::exec () [slot]

Affiche la boîte de message en tant que boîte de dialogue modale, bloquante jusqu'à ce que l'utilisateur la ferme.

Lorsque cette fonction est utilisée sur un QMessageBox avec des boutons standard, elle retourne une valeur de StandardButton indiquant le bouton standard qui a été cliqué. Lorsqu'elle est utilisée sur un QMessageBox avec des boutons personnalisés, cette fonction retourne une valeur opaque ; utilisez clickedButton() pour déterminer quel bouton a été cliqué.

Les utilisateurs ne peuvent interagir avec aucune autre fenêtre de la même application jusqu'à ce qu'ils ferment la boîte de dialogue, soit en cliquant sur un bouton, soit en utilisant un mécanisme fourni par le système de fenêtre.

Voir aussi show() et result().

StandardButton QMessageBox::information ( QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton ) [static]

Ouvre une boîte de message d'information avec le titre spécifié par title et le texte text. Les boutons standard buttons sont ajoutés à la boîte de message. defaultButton spécifie le bouton utilisé lors d'un appui sur la touche Entrée. defaultButton doit faire référence à un bouton qui fait partie de buttons. Si defaultButton est QMessageBox::NoButton, QMessageBox choisira automatiquement une valeur par défaut appropriée.

Retourne l'identité du bouton standard cliqué. Si Echap a été pressée, retourne le bouton d'échappement.

La boîte de message est une boîte de dialogue de type modale à l'application.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi question(), warning() et critical().

void QMessageBox::keyPressEvent ( QKeyEvent * e ) [virtual protected]

Réimplémentation de QWidget::keyPressEvent().

void QMessageBox::open ( QObject * receiver, const char * member )

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

Ouvre une boîte de dialogue et connecte ses signaux finished() ou buttonClicked() au slot spécifié par receiver et member. Si le premier paramètre du slot dans member est un pointeur, la connexion est vers buttonClicked(), sinon elle est vers finished().

Le signal sera déconnecté du slot dès que la boîte de dialogue sera fermée.

StandardButton QMessageBox::question ( QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton ) [static]

Ouvre une boîte de message d'information avec le titre spécifié par title et le texte text. Les boutons standard buttons sont ajoutés à la boîte de message. defaultButton spécifie le bouton utilisé lors d'un appui sur la touche Entrée. defaultButton doit faire référence à un bouton qui fait partie de buttons. Si defaultButton est QMessageBox::NoButton, QMessageBox choisira automatiquement une valeur par défaut appropriée.

Retourne l'identité du bouton standard cliqué. Si Echap a été pressée, retourne le bouton d'échappement.

La boîte de message est une boîte de dialogue de type modale à l'application.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi information(), warning() et critical().

void QMessageBox::removeButton ( QAbstractButton * button )

Retire le bouton button des boutons de la boîte de dialogue sans le détruire.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi addButton() et setStandardButtons().

void QMessageBox::resizeEvent ( QResizeEvent * event ) [virtual protected]

Réimplémentation de QWidget::resizeEvent().

void QMessageBox::setDefaultButton ( QPushButton * button )

Définit button comme bouton par défaut de la boîte de message.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi defaultButton(), addButton() et QPushButton::setDefault().

void QMessageBox::setDefaultButton ( StandardButton button )

Définit button comme bouton par défaut de la boîte de message.

Cette fonction a été introduite dans Qt 4.3.

Voir aussi addButton() and QPushButton::setDefault().

void QMessageBox::setEscapeButton ( QAbstractButton * button )

Définit button comme bouton à activer lors d'un appui sur la touche Echap.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi escapeButton(), addButton() et clickedButton().

void QMessageBox::setEscapeButton ( StandardButton button )

Définit button comme bouton à activer lors d'un appui sur la touche Echap.

Cette fonction a été introduite dans Qt 4.3.

Voir aussi addButton() et clickedButton().

void QMessageBox::setVisible ( bool visible ) [virtual]

Réimplémentation de QWidget::setVisible().

void QMessageBox::setWindowModality ( Qt::WindowModality windowModality )

Cette fonction masque QWidget::setWindowModality().

Définit la modalité de la boîte de message à windowModality.

Sur Mac OS X, si la modalité est définie à Qt::WindowModal et que la boîte de dialogue a un parent, elle sera un Qt::Sheet, sinon elle sera une boîte de dialogue standard.

Cette fonction a été introduite dans Qt 4.2.

void QMessageBox::setWindowTitle ( const QString & title )

Cette fonction masque QWidget::setWindowTitle().

Définit le titre de la boîte de message à title. Sur Mac OS X, le titre de la fenêtre est ignoré (comme requis par les directives de Mac OS X).

Cette fonction a été introduite dans Qt 4.2.

void QMessageBox::showEvent ( QShowEvent * e ) [virtual protected]

Réimplémentation de QWidget::showEvent().

StandardButton QMessageBox::standardButton ( QAbstractButton * button ) const

Retourne la valeur de l'énumération de bouton standard correspondant à button ou NoButton, si le bouton indiqué n'est pas un bouton standard.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi button() et standardButtons().

StandardButton QMessageBox::warning ( QWidget * parent, const QString & title, const QString & text, StandardButtons buttons = Ok, StandardButton defaultButton = NoButton ) [static]

Ouvre une boîte de message d'avertissement avec le titre spécifié par title et le texte text. Les boutons standard buttons sont ajoutés à la boîte de message. defaultButton spécifie le bouton utilisé lors d'un appui sur la touche Entrée. defaultButton doit faire référence à un bouton qui fait partie de buttons. Si defaultButton est QMessageBox::NoButton, QMessageBox choisira automatiquement une valeur par défaut appropriée.

Retourne l'identité du bouton standard cliqué. Si Echap a été pressée, retourne le bouton d'échappement.

La boîte de message est une boîte de dialogue de type modale à l'application.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi question(), information() et critical().

Remerciements

Merci à Dimitry Ernot pour la traduction, ainsi qu'à Ilya Diallo et Claude Leloup pour la relecture !

Warning: include(): https:// wrapper is disabled in the server configuration by allow_url_include=0 in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4 Warning: include(https://qt.developpez.com/index/rightColumn): failed to open stream: no suitable wrapper could be found in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4 Warning: include(): Failed opening 'https://qt.developpez.com/index/rightColumn' for inclusion (include_path='.:/usr/php53/lib/php') in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4
Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.7
Copyright © 2019 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur, une redirection cassée ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -

Partenaire : Hébergement Web