Spec-Zone.ru › Qt 6.1

Тип QML Dialog

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

Заявление об импорте: import QtQuick.Controls 2.1
С момента: Qt 5.8
Наследует:

Popup

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

Свойства

  • footer : Элемент
  • header : Элемент
  • implicitFooterHeight : вещественное
  • implicitFooterWidth : вещественное
  • implicitHeaderHeight : вещественное
  • implicitHeaderWidth : вещественное
  • result : целое число
  • standardButtons : перечисление
  • title : строка

Сигналы

  • accepted()
  • applied()
  • discarded()
  • helpRequested()
  • rejected()
  • reset()

Методы

  • void accept()
  • void done(int result)
  • void reject()
  • AbstractButton standardButton(StandardButton button)

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

Диалоговое окно — это всплывающее окно, в основном используемое для краткосрочных задач и краткого общения с пользователем. Подобно ApplicationWindow и Page, Dialog организован на три раздела: header, contentItem и footer.

Заголовок и кнопки диалогового окна

Заголовок диалогового окна title отображается с помощью специфичной для стиля панели заголовка, которая по умолчанию задаётся как заголовок диалогового окна header.

Стандартные кнопки диалогового окна управляются DialogButtonBox, который по умолчанию назначен как подвал диалогового окна footer. Свойство standardButtons диалогового окна передаётся соответствующему свойству панели кнопок. Кроме того, сигналы accepted() и rejected() панели кнопок подключаются к соответствующим сигналам в Dialog.

Dialog {
    id: dialog
    title: "Title"
    standardButtons: Dialog.Ok | Dialog.Cancel

    onAccepted: console.log("Ok clicked")
    onRejected: console.log("Cancel clicked")
}

Модальные диалоговые окна

Модальное диалоговое окно modal блокирует ввод в другой контент под диалоговым окном. При открытии модального диалогового окна пользователь должен завершить взаимодействие с диалоговым окном и закрыть его, прежде чем сможет получить доступ к другому контенту в том же окне.

Dialog {
    id: dialog
    modal: true
    standardButtons: Dialog.Ok
}

Безмасштабные диалоговые окна

Безмасштабное диалоговое окно — это диалоговое окно, которое работает независимо от другого контента вокруг диалогового окна. При открытии безмасштабного диалогового окна пользователь может взаимодействовать как с диалоговым окном, так и с другими элементами контента в том же окне.

Dialog {
    id: dialog
    modal: false
    standardButtons: Dialog.Ok
}

См. также DialogButtonBox и Popup Controls.

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

footer : Элемент

Это свойство содержит элемент подвала диалогового окна. Элемент подвала размещается внизу и имеет ширину диалогового окна. Значение по умолчанию — null.

Примечание: Назначение DialogButtonBox в качестве подвала диалогового окна автоматически подключает его сигналы accepted() и rejected() к соответствующим сигналам в Dialog.

Примечание: Назначение DialogButtonBox, ToolBar или TabBar в качестве подвала диалогового окна автоматически задаёт соответствующее свойство DialogButtonBox::position, ToolBar::position или TabBar::position значение Footer.

См. также header.

header : Элемент

Это свойство содержит элемент заголовка диалогового окна. Элемент заголовка размещается вверху и имеет ширину диалогового окна. Значение по умолчанию — null.

Примечание: Назначение DialogButtonBox в качестве заголовка диалогового окна автоматически подключает его сигналы accepted() и rejected() к соответствующим сигналам в Dialog.

Примечание: Назначение DialogButtonBox, ToolBar или TabBar в качестве заголовка диалогового окна автоматически задаёт соответствующее свойство DialogButtonBox::position, ToolBar::position или TabBar::position значение Header.

См. также footer.

[только чтение, начиная с QtQuick.Controls 2.5 (Qt 5.12)] implicitFooterHeight : вещественное

Это свойство содержит неявную высоту подвала.

Значение равно footer && footer.visible ? footer.implicitHeight : 0.

Это свойство было введено в QtQuick.Controls 2.5 (Qt 5.12).

См. также implicitFooterWidth и implicitHeaderHeight.

[только чтение, начиная с QtQuick.Controls 2.5 (Qt 5.12)] implicitFooterWidth : вещественное

Это свойство содержит неявную ширину подвала.

Значение равно footer && footer.visible ? footer.implicitWidth : 0.

Это свойство было введено в QtQuick.Controls 2.5 (Qt 5.12).

См. также implicitFooterHeight и implicitHeaderWidth.

[только чтение, начиная с QtQuick.Controls 2.5 (Qt 5.12)] implicitHeaderHeight : вещественное

Это свойство содержит неявную высоту заголовка.

Значение равно header && header.visible ? header.implicitHeight : 0.

Это свойство было введено в QtQuick.Controls 2.5 (Qt 5.12).

См. также implicitHeaderWidth и implicitFooterHeight.

[только чтение, начиная с QtQuick.Controls 2.5 (Qt 5.12)] implicitHeaderWidth : вещественное

Это свойство содержит неявную ширину заголовка.

Значение равно header && header.visible ? header.implicitWidth : 0.

Это свойство было введено в QtQuick.Controls 2.5 (Qt 5.12).

См. также implicitHeaderHeight и implicitFooterWidth.

[начиная с QtQuick.Controls 2.3 (Qt 5.10)] result : целое число

Это свойство содержит код результата.

Стандартные коды результатов:

Константа Описание
Dialog.Accepted Диалоговое окно было принято.
Dialog.Rejected Диалоговое окно было отклонено.

Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).

См. также accept(), reject() и done().

standardButtons : перечисление

Это свойство содержит комбинацию стандартных кнопок, используемых диалоговым окном.

Dialog {
    id: dialog
    title: "Title"
    standardButtons: Dialog.Ok | Dialog.Cancel

    onAccepted: console.log("Ok clicked")
    onRejected: console.log("Cancel clicked")
}

Кнопки будут размещены в соответствующем порядке для платформы пользователя.

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

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

См. также DialogButtonBox.

title : строка

Это свойство содержит заголовок диалогового окна.

Заголовок отображается в заголовке диалогового окна.

Dialog {
    title: qsTr("About")

    Label {
        text: "Lorem ipsum..."
    }
}

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

accepted()

Этот сигнал испускается, когда диалоговое окно было принято либо интерактивно, либо путём вызова accept().

Примечание: Этот сигнал не испускается при закрытии диалогового окна с помощью close() или установкой visible в false.

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

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

[since QtQuick.Controls 2.3 (Qt 5.10)] applied()

Этот сигнал испускается, когда нажата стандартная кнопка Dialog.Apply.

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

Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также discarded() и reset().

[since QtQuick.Controls 2.3 (Qt 5.10)] discarded()

Этот сигнал испускается, когда нажата стандартная кнопка Dialog.Discard.

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

Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также reset() и applied().

[since QtQuick.Controls 2.3 (Qt 5.10)] helpRequested()

Этот сигнал испускается, когда нажата стандартная кнопка Dialog.Help.

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

Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также accepted() и rejected().

rejected()

Этот сигнал испускается, когда диалоговое окно было отклонено либо интерактивно, либо путём вызова reject().

Примечание: Этот сигнал не испускается при закрытии диалогового окна с помощью close() или установкой visible в false.

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

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

[since QtQuick.Controls 2.3 (Qt 5.10)] reset()

Этот сигнал испускается, когда нажата стандартная кнопка Dialog.Reset.

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

Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также discarded() и applied().

Документация методов

void accept()

Испускает сигнал accepted() и закрывает диалоговое окно.

См. также reject() и done().

[since QtQuick.Controls 2.3 (Qt 5.10)] void done(int result)

  1. Устанавливает result.
  2. Испускает accepted() или rejected(), в зависимости от того, является ли результат Dialog.Accepted или Dialog.Rejected соответственно.
  3. Испускает closed().

Этот метод был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также accept(), reject() и result.

void reject()

Испускает сигнал rejected() и закрывает диалоговое окно.

См. также accept() и done().

[since QtQuick.Controls 2.3 (Qt 5.10)] AbstractButton standardButton(StandardButton button)

Возвращает указанную стандартную кнопку button или null, если её нет.

Этот метод был добавлен в QtQuick.Controls 2.3 (Qt 5.10).

См. также standardButtons.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qml-qtquick-controls2-dialog.html

Spec-Zone.ru

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