このページでは

MessageDialog QML Type

ネイティブのメッセージダイアログ。詳細...

Import Statement: import Qt.labs.platform
Inherits:

Dialog

Status: Deprecated since 6.9

この型は Qt Labs Platform 6.9 以降、非推奨となっています。新しいコードでの使用は強く推奨しません。

プロパティ

信号

詳細説明

代わりにQtQuick.Dialogs MessageDialog を使用してください。

MessageDialog 型は、ネイティブプラットフォームのメッセージダイアログ用の QML API を提供します。

ネイティブメッセージダイアログ

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

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

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

ユーザーがメッセージダイアログを閉じるには、OK ボタンをクリックする必要があります。モーダルなメッセージダイアログは、メッセージが閉じられるまでGUIの他の操作をブロックします。

単にイベントをユーザーに通知するだけでなく、その対応についてユーザーに確認を求めるという、より精巧なアプローチもあります。質問内容を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()
}

ネイティブのインフォメーションメッセージダイアログ

clicked() シグナルは、どのボタンがクリックされたかという情報を渡します。

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

  • Android
  • iOS
  • macOS

Qt Labs Platform モジュールは、ネイティブの実装が利用できないプラットフォームにおいて、フォールバックとしてQt Widgets を使用します。したがって、Qt Labs Platform モジュールの型を使用するアプリケーションは、QtWidgets にリンクし、QGuiApplication の代わりにQApplication を使用する必要があります。

QtWidgets ライブラリに対してリンクするには、qmakeプロジェクトファイルに以下を追加してください:

QT += widgets

main() 内でQApplication のインスタンスを作成します:

#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();
}

注: Qt.labs モジュール内の型は、将来のバージョンでも互換性が維持されるとは限りません。

「QtQuick.Dialogs::MessageDialog」も参照してください 。

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

buttons : flags

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

使用可能なフラグ:

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

clicked()も参照してください 。

detailedText : string

このプロパティには、詳細エリアに表示されるテキストが格納されます。

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

informativeText : string

このプロパティには、メッセージについてより詳しい説明を提供する説明文が格納されます。

説明文は、text を補足して、ユーザーにより多くの情報を提供するために使用できます。

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

text : string

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

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

シグナルのドキュメント

abortClicked()

このシグナルは、Abort がクリックされたときに発生します。

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

applyClicked()

このシグナルは、Apply がクリックされたときに発生します。

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

cancelClicked()

このシグナルは、Cancel がクリックされたときに発せられます。

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

clicked(button)

このシグナルは、ダイアログbutton がクリックされたときに発生します。

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

「buttons」も参照してください 。

closeClicked()

このシグナルは、Close がクリックされたときに発生します。

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

discardClicked()

このシグナルは、Discard がクリックされたときに発火します。

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

helpClicked()

このシグナルは、Help がクリックされたときに発生します。

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

ignoreClicked()

このシグナルは、Ignore がクリックされたときに発生します。

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

noClicked()

このシグナルは、No がクリックされたときに発生します。

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

noToAllClicked()

このシグナルは、No To All がクリックされたときに発生します。

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

okClicked()

このシグナルは、Ok がクリックされたときに発生します。

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

openClicked()

このシグナルは、Open がクリックされたときに発生します。

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

resetClicked()

このシグナルは、Reset がクリックされたときに発生します。

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

restoreDefaultsClicked()

このシグナルは、Restore Defaults がクリックされたときに発生します。

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

retryClicked()

このシグナルは、Retry がクリックされたときに発生します。

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

saveAllClicked()

このシグナルは、Save All がクリックされたときに発生します。

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

saveClicked()

このシグナルは、Save がクリックされたときに発生します。

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

yesClicked()

このシグナルは、Yes がクリックされたときに発生します。

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

yesToAllClicked()

このシグナルは、Yes To All がクリックされたときに発生します。

注: 対応するハンドラは 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.