Spec-Zone.ru › Qt 6.0

Тип QML MessageDialog

Всплывающее окно с сообщением. Подробнее...

Выражение импорта: import Qt.labs.platform 1.1
С момента: Qt 5.8
Наследуется от:

Dialog

  • Список всех членов, включая унаследованные

Свойства

  • buttons : флаги
  • detailedText : строка
  • informativeText : строка
  • text : строка

Сигналы

  • abortClicked()
  • applyClicked()
  • cancelClicked()
  • clicked(button)
  • closeClicked()
  • discardClicked()
  • helpClicked()
  • ignoreClicked()
  • noClicked()
  • noToAllClicked()
  • okClicked()
  • openClicked()
  • resetClicked()
  • restoreDefaultsClicked()
  • retryClicked()
  • saveAllClicked()
  • saveClicked()
  • yesClicked()
  • yesToAllClicked()

Подробное описание

Тип MessageDialog предоставляет QML API для всплывающих окон с сообщениями нативных платформ.

Всплывающее окно с сообщением используется для информирования пользователя или задавания ему вопроса. Всплывающее окно отображает основное текстовое сообщение для оповещения пользователя о ситуации, информативный текст для дальнейшего объяснения оповещения или задавания пользователю вопроса, и необязательный детальный текст для предоставления ещё большего объёма данных, если пользователь этого попросит. Окно с сообщением также может отображать настраиваемый набор кнопок для получения ответа пользователя.

Чтобы показать всплывающее окно с сообщением, создайте экземпляр MessageDialog, задайте нужные свойства и вызовите open().

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

Пользователь должен нажать кнопку ОК, чтобы закрыть всплывающее окно с сообщением. Модальное всплывающее окно с сообщением блокирует остальную часть графического интерфейса пользователя, пока сообщение не будет закрыто.

Более сложный подход, чем просто оповещение пользователя о событии, заключается в том, чтобы также спросить пользователя, что делать по этому поводу. Сохраните вопрос в свойстве информативный текст, и укажите свойство кнопки для набора кнопок, которые вы хотите, как набор пользовательских ответов. Кнопки задаются путём комбинирования значений с помощью побитового оператора ИЛИ. Порядок отображения кнопок зависит от платформы.

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

    onAccepted: document.save()
}

Сигнал clicked() передаёт информацию о нажатой кнопке.

Всплывающее окно с сообщением нативной платформы в настоящее время доступно на следующих платформах:

  • iOS
  • Android

Модуль Qt Labs Platform использует Qt Widgets в качестве резервного варианта на платформах, на которых нет нативной реализации. Поэтому приложения, использующие типы из модуля Qt Labs Platform, должны ссылаться на QtWidgets и использовать QApplication вместо QGuiApplication.

Чтобы связаться с библиотекой QtWidgets, добавьте следующее в ваш файл проекта qmake:

QT += widgets

Создайте экземпляр QApplication в 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();
}

Примечание: Типы в модулях Qt.labs не гарантируют сохранение совместимости в будущих версиях.

Документация по свойствам

buttons : флаги

Это свойство содержит комбинацию кнопок, которые используются в диалоговом окне с сообщением. Значение по умолчанию — MessageDialog.NoButton.

Возможные флаги:

Константа Описание
MessageDialog.Ok Кнопка «ОК», определённая с AcceptRole.
MessageDialog.Open Кнопка «Открыть», определённая с AcceptRole.
MessageDialog.Save Кнопка «Сохранить», определённая с AcceptRole.
MessageDialog.Cancel Кнопка «Отмена», определённая с RejectRole.
MessageDialog.Close Кнопка «Закрыть», определённая с RejectRole.
MessageDialog.Discard Кнопка «Отбросить» или «Не сохранять», в зависимости от платформы, определённая с DestructiveRole.
MessageDialog.Apply Кнопка «Применить», определённая с ApplyRole.
MessageDialog.Reset Кнопка «Сбросить», определённая с ResetRole.
MessageDialog.RestoreDefaults Кнопка «Восстановить значения по умолчанию», определённая с ResetRole.
MessageDialog.Help Кнопка «Справка», определённая с HelpRole.
MessageDialog.SaveAll Кнопка «Сохранить всё», определённая с AcceptRole.
MessageDialog.Yes Кнопка «Да», определённая с YesRole.
MessageDialog.YesToAll Кнопка «Да для всех», определённая с YesRole.
MessageDialog.No Кнопка «Нет», определённая с NoRole.
MessageDialog.NoToAll Кнопка «Нет для всех», определённая с NoRole.
MessageDialog.Abort Кнопка «Прервать», определённая с RejectRole.
MessageDialog.Retry Кнопка «Повторить», определённая с AcceptRole.
MessageDialog.Ignore Кнопка «Пропустить», определённая с AcceptRole.
MessageDialog.NoButton В диалоговом окне нет кнопок.

См. также clicked().

detailedText : строка

Это свойство содержит текст, который должен быть отображён в области подробностей.

См. также text и informativeText.

informativeText : строка

Это свойство содержит информативный текст, который обеспечивает более полное описание сообщения.

Информативный текст можно использовать для расширения текста, чтобы предоставить пользователю больше информации.

См. также text и detailedText.

text : строка

Это свойство содержит текст, который должен быть отображён в диалоговом окне с сообщением.

См. также informativeText и detailedText.

Документация по сигналам

abortClicked()

Этот сигнал генерируется при нажатии кнопки Прервать.

Примечание: Соответствующий обработчик — onAbortClicked.

applyClicked()

Этот сигнал генерируется при нажатии кнопки Применить.

Примечание: Соответствующий обработчик — onApplyClicked.

cancelClicked()

Этот сигнал генерируется при нажатии кнопки Отмена.

Примечание: Соответствующий обработчик — onCancelClicked.

clicked(button)

Этот сигнал испускается при нажатии на кнопку диалогового окна button.

Примечание: Соответствующий обработчик — onClicked.

См. также buttons.

closeClicked()

Этот сигнал испускается при нажатии на кнопку Закрыть.

Примечание: Соответствующий обработчик — onCloseClicked.

discardClicked()

Этот сигнал испускается при нажатии на кнопку Отклонить.

Примечание: Соответствующий обработчик — onDiscardClicked.

helpClicked()

Этот сигнал испускается при нажатии на кнопку Справка.

Примечание: Соответствующий обработчик — onHelpClicked.

ignoreClicked()

Этот сигнал испускается при нажатии на кнопку Пропустить.

Примечание: Соответствующий обработчик — onIgnoreClicked.

noClicked()

Этот сигнал испускается при нажатии на кнопку Нет.

Примечание: Соответствующий обработчик — onNoClicked.

noToAllClicked()

Этот сигнал испускается при нажатии на кнопку Нет всем.

Примечание: Соответствующий обработчик — onNoToAllClicked.

okClicked()

Этот сигнал испускается при нажатии на кнопку ОК.

Примечание: Соответствующий обработчик — onOkClicked.

openClicked()

Этот сигнал испускается при нажатии на кнопку Открыть.

Примечание: Соответствующий обработчик — onOpenClicked.

resetClicked()

Этот сигнал испускается при нажатии на кнопку Сбросить.

Примечание: Соответствующий обработчик — onResetClicked.

restoreDefaultsClicked()

Этот сигнал испускается при нажатии на кнопку Восстановить значения по умолчанию.

Примечание: Соответствующий обработчик — onRestoreDefaultsClicked.

retryClicked()

Этот сигнал испускается при нажатии на кнопку Повторить.

Примечание: Соответствующий обработчик — onRetryClicked.

saveAllClicked()

Этот сигнал испускается при нажатии на кнопку Сохранить все.

Примечание: Соответствующий обработчик — onSaveAllClicked.

saveClicked()

Этот сигнал испускается при нажатии на кнопку Сохранить.

Примечание: Соответствующий обработчик — onSaveClicked.

yesClicked()

Этот сигнал испускается при нажатии на кнопку Да.

Примечание: Соответствующий обработчик — onYesClicked.

yesToAllClicked()

Этот сигнал испускается при нажатии на кнопку Да всем.

Примечание: Соответствующий обработчик — onYesToAllClicked.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qml-qt-labs-platform-messagedialog.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API