Sur cette page

MessageDialog QML Type

Une boîte de dialogue de message native. Plus...

Import Statement: import Qt.labs.platform
Inherits:

Dialog

Status: Deprecated since 6.9

Ce type est obsolète depuis Qt.Labs.Platform 6.9. Il est fortement déconseillé de l'utiliser dans un nouveau code.

Propriétés

Signaux

Description détaillée

Utilisez plutôt QtQuick.Dialogs MessageDialog.

Le type MessageDialog fournit une API QML pour les boîtes de dialogue de la plate-forme native.

Un dialogue de message natif

Une boîte de dialogue est utilisée pour informer l'utilisateur ou lui poser une question. Une boîte de dialogue affiche un message principal text pour alerter l'utilisateur d'une situation, un message informative text pour expliquer davantage l'alerte ou pour poser une question à l'utilisateur, et un message facultatif detailed text pour fournir encore plus de données si l'utilisateur le demande. Une boîte de message peut également afficher un ensemble configurable de buttons pour accepter une réponse de l'utilisateur.

Pour afficher une boîte de dialogue, construisez une instance de MessageDialog, définissez les propriétés souhaitées et appelez open().

MessageDialog {
    buttons: MessageDialog.Ok
    text: "The document has been modified."
}

L'utilisateur doit cliquer sur le bouton OK pour fermer la boîte de dialogue. Une boîte de dialogue modale bloque le reste de l'interface graphique jusqu'à ce que le message soit supprimé.

Une approche plus élaborée que le simple fait d'alerter l'utilisateur d'un événement consiste à lui demander ce qu'il doit faire à ce sujet. Stockez la question dans la propriété informative text, et spécifiez la propriété buttons à l'ensemble des boutons que vous voulez comme ensemble de réponses de l'utilisateur. Les boutons sont spécifiés en combinant des valeurs à l'aide de l'opérateur bitwise OR. L'ordre d'affichage des boutons dépend de la plate-forme.

MessageDialog {
    text: "The document has been modified."
    informativeText: "Do you want to save your changes?"
    buttons: MessageDialog.Ok | MessageDialog.Cancel

    onAccepted: document.save()
}

Un dialogue informatif natif

Le signal clicked() transmet l'information concernant le bouton sur lequel l'utilisateur a cliqué.

Une boîte de dialogue native est actuellement disponible sur les plateformes suivantes :

  • Android
  • iOS
  • macOS

Le module Qt Labs Platform utilise Qt Widgets comme solution de repli sur les plateformes qui ne disposent pas d'une implémentation native. Par conséquent, les applications qui utilisent des types du module Qt Labs Platform doivent être liées à QtWidgets et utiliser QApplication au lieu de QGuiApplication.

Pour établir un lien avec la bibliothèque QtWidgets, ajoutez ce qui suit à votre fichier de projet qmake :

QT += widgets

Créez une instance de QApplication dans main():

#include <QApplication>
#include <QQmlApplicationEngine>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
    return app.exec();
}

Note : La compatibilité des types dans les modules Qt.labs n'est pas garantie dans les versions futures.

Voir aussi QtQuick.Dialogs::MessageDialog.

Documentation sur les propriétés

buttons : flags

Cette propriété contient une combinaison de boutons utilisés par la boîte de dialogue de messages. La valeur par défaut est MessageDialog.NoButton.

Drapeaux possibles :

ConstanteDescription
MessageDialog.OkUn bouton "OK" défini à l'aide de la propriété AcceptRole.
MessageDialog.OpenUn bouton "Ouvrir" défini à l'aide de l'adresse AcceptRole.
MessageDialog.SaveUn bouton "Save" défini à l'aide de l'adresse AcceptRole.
MessageDialog.CancelUn bouton "Annuler" défini à l'aide de l'adresse RejectRole.
MessageDialog.CloseUn bouton "Fermer" défini à l'aide de l'adresse RejectRole.
MessageDialog.DiscardUn bouton "Discard" ou "Don't Save", en fonction de la plateforme, défini à l'aide de l'adresse DestructiveRole.
MessageDialog.ApplyUn bouton "Appliquer" défini à l'aide de l'adresse ApplyRole.
MessageDialog.ResetUn bouton "Reset" défini à l'aide de l'adresse ResetRole.
MessageDialog.RestoreDefaultsUn bouton "Restore Defaults" défini à l'aide de l'adresse ResetRole.
MessageDialog.HelpUn bouton "Help" défini à l'aide de l'adresse HelpRole.
MessageDialog.SaveAllUn bouton "Save All" défini à l'aide de l'adresse AcceptRole.
MessageDialog.YesUn bouton "Oui" défini à l'aide de l'adresse YesRole.
MessageDialog.YesToAllUn bouton "Oui à tout" défini à l'aide de l'adresse YesRole.
MessageDialog.NoUn bouton "Non" défini à l'aide de l'adresse NoRole.
MessageDialog.NoToAllUn bouton "Non à tous" défini à l'aide de l'adresse NoRole.
MessageDialog.AbortUn bouton "Abort" défini à l'aide de l'adresse RejectRole.
MessageDialog.RetryUn bouton "Retry" défini à l'aide de l'adresse AcceptRole.
MessageDialog.IgnoreUn bouton "Ignorer" défini à l'aide de l'adresse AcceptRole.
MessageDialog.NoButtonLa boîte de dialogue n'a pas de bouton.

Voir aussi clicked().

detailedText : string

Cette propriété contient le texte à afficher dans la zone de détails.

Voir également text et informativeText.

informativeText : string

Cette propriété contient le texte informatif qui fournit une description plus complète du message.

Le texte informatif peut être utilisé pour développer le site text et donner plus d'informations à l'utilisateur.

Voir également text et detailedText.

text : string

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

Voir également informativeText et detailedText.

Documentation sur les signaux

abortClicked()

Ce signal est émis lorsque Abort est cliqué.

Remarque : le gestionnaire correspondant est onAbortClicked.

applyClicked()

Ce signal est émis lorsque Apply est cliqué.

Remarque : le gestionnaire correspondant est onApplyClicked.

cancelClicked()

Ce signal est émis lorsque Cancel est cliqué.

Remarque : le gestionnaire correspondant est onCancelClicked.

clicked(button)

Ce signal est émis lorsqu'un dialogue button est cliqué.

Remarque : le gestionnaire correspondant est onClicked.

Voir aussi buttons.

closeClicked()

Ce signal est émis lorsque Close est cliqué.

Remarque : le gestionnaire correspondant est onCloseClicked.

discardClicked()

Ce signal est émis lorsque Discard est cliqué.

Remarque : le gestionnaire correspondant est onDiscardClicked.

helpClicked()

Ce signal est émis lorsque Help est cliqué.

Remarque : le gestionnaire correspondant est onHelpClicked.

ignoreClicked()

Ce signal est émis lorsque Ignore est cliqué.

Remarque : le gestionnaire correspondant est onIgnoreClicked.

noClicked()

Ce signal est émis lorsque No est cliqué.

Remarque : le gestionnaire correspondant est onNoClicked.

noToAllClicked()

Ce signal est émis lorsque No To All est cliqué.

Remarque : le gestionnaire correspondant est onNoToAllClicked.

okClicked()

Ce signal est émis lorsque Ok est cliqué.

Remarque : le gestionnaire correspondant est onOkClicked.

openClicked()

Ce signal est émis lorsque Open est cliqué.

Remarque : le gestionnaire correspondant est onOpenClicked.

resetClicked()

Ce signal est émis lorsque Reset est cliqué.

Remarque : le gestionnaire correspondant est onResetClicked.

restoreDefaultsClicked()

Ce signal est émis lorsque Restore Defaults est cliqué.

Remarque : le gestionnaire correspondant est onRestoreDefaultsClicked.

retryClicked()

Ce signal est émis lorsque Retry est cliqué.

Remarque : le gestionnaire correspondant est onRetryClicked.

saveAllClicked()

Ce signal est émis lorsque Save All est cliqué.

Remarque : le gestionnaire correspondant est onSaveAllClicked.

saveClicked()

Ce signal est émis lorsque Save est cliqué.

Remarque : le gestionnaire correspondant est onSaveClicked.

yesClicked()

Ce signal est émis lorsque Yes est cliqué.

Remarque : le gestionnaire correspondant est onYesClicked.

yesToAllClicked()

Ce signal est émis lorsque Yes To All est cliqué.

Remarque : le gestionnaire correspondant est onYesToAllClicked.

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