このページでは

MessageDialog QML Type

メッセージダイアログ。もっと見る...

Import Statement: import QtQuick.Dialogs
Since: Qt 6.3
Inherits:

Dialog

プロパティ

信号

  • buttonClicked(QPlatformDialogHelper::StandardButton button, QPlatformDialogHelper::ButtonRole role)

詳細な説明

MessageDialog 型はメッセージダイアログのための QML API を提供します。

メッセージダイアログは、ユーザーにいくつかの情報を知らせ、ユーザーがダイアログを承認すると閉じます。

メッセージダイアログはユーザに情報を知らせたり、ユーザに質問をするために使用されます。メッセージダイアログは、ユーザに状況を知らせるためのプライマリtext 、アラートをさらに説明したり、ユーザに質問するためのinformative text 、ユーザが要求した場合にさらに多くのデータを提供するためのオプションdetailed text を表示します。メッセージ・ボックスは、ユーザーの応答を受け付けるための設定可能なセットbuttons を表示することもできます。

メッセージ・ダイアログを表示するには、MessageDialog のインスタンスを作成し、必要なプロパティを設定し、open ()を呼び出します。

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

メッセージ・ダイアログを閉じるには、OK ボタンをクリックする必要があります。

ユーザーにイベントを警告するだけでなく、より手の込んだアプローチとして、ユーザーにそのイベントに対して何をすべきかを尋ねることもできます。質問をinformative text プロパティに格納し、buttons プロパティに、ユーザーの応答として必要なボタンのセットを指定します。ボタンは、ビット単位のOR演算子を使って値を組み合わせて指定します。

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

    onAccepted: document.save()
}

メッセージダイアログは、ユーザーがメッセージに基づいて選択することを可能にし、ボタンのプロパティに基づいて関連するアクションを実行します。

利用可能性

ネイティブプラットフォームメッセージダイアログは、現在以下のプラットフォームで利用可能です:

  • アンドロイド
  • iOS
  • macOS

Qt Quick ダイアログは、ネイティブな実装が利用できないプラットフォームでは、フォールバックとしてQt Quick の実装を使用します。

プロパティのドキュメント

buttons : flags

このプロパティは、メッセージダイアログで使用されるボタンの組み合わせを保持する。デフォルト値はMessageDialog.NoButton です。

可能なフラグ

定数説明
MessageDialog.OkAcceptRole で定義された "OK "ボタン。
MessageDialog.OpenAcceptRole で定義された「開く」ボタン。
MessageDialog.SaveAcceptRole で定義された「保存」ボタン。
MessageDialog.CancelRejectRole で定義された「キャンセル」ボタン。
MessageDialog.CloseRejectRole で定義された「閉じる」ボタン。
MessageDialog.Discardプラットフォームによって異なるが、DestructiveRole で定義された「破棄」または「保存しない」ボタン。
MessageDialog.ApplyApplyRole で定義された「適用」ボタン。
MessageDialog.ResetResetRole で定義された「リセット」ボタン。
MessageDialog.RestoreDefaultsResetRole で定義されている「デフォルトに戻す」ボタン。
MessageDialog.HelpHelpRole で定義された「ヘルプ」ボタン。
MessageDialog.SaveAllAcceptRole で定義された「すべて保存」ボタン。
MessageDialog.YesYesRole で定義された「はい」ボタン。
MessageDialog.YesToAllYesRole で定義された「Yes to All」ボタン。
MessageDialog.NoNoRole で定義された「いいえ」ボタン。
MessageDialog.NoToAllNoRole で定義された「No to All」ボタン。
MessageDialog.AbortRejectRole で定義された「中止」ボタン。
MessageDialog.RetryAcceptRole で定義される「再試行」ボタン。
MessageDialog.IgnoreAcceptRole で定義された「無視」ボタン。
MessageDialog.NoButtonダイアログにはボタンはありません。

buttonClicked()も参照

detailedText : string

このプロパティは、詳細領域に表示されるテキストを保持する。

text およびinformativeTextも参照してください

informativeText : string

このプロパティは、メッセージのより詳細な説明を提供する情報テキストを保持する。

インフォメーティブ・テキストは、text を拡張し、ユーザーに詳細な情報を提供するために使用できます。

text およびdetailedTextも参照してください

text : string

このプロパティは、メッセージダイアログに表示されるテキストを保持する。

informativeText およびdetailedTextも参照してください

シグナル・ドキュメント

buttonClicked(QPlatformDialogHelper::StandardButton button, QPlatformDialogHelper::ButtonRole role)

このシグナルは、指定されたrole を持つbutton がクリックされたときに発せられます。

このシグナルにハンドラを与えることで、任意のカスタムボタンが押されたときに応答することができます。button の引数はどのボタンがクリックされたかを表し、role の引数はそのボタンの機能的な役割を表します。

MessageDialog {
    id: dialog
    text: qsTr("The document has been modified.")
    informativeText: qsTr("Do you want to save your changes?")
    buttons: MessageDialog.Ok | MessageDialog.Cancel
    onButtonClicked: function (button, role) {
        switch (button) {
        case MessageDialog.Ok:
            document.save()
            break;
        }
    }
}

注: 対応するハンドラはonButtonClicked です。

buttonsも参照してください

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