Тип QML Диалог
Поп-ап диалог со стандартными кнопками и заголовком, используемый для кратковременного взаимодействия с пользователем. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.4 |
| С тех пор: | Qt 5.8 |
| Наследует: |
Свойства
- footer : Элемент
- header : Элемент
- result : int
- standardButtons : перечисление
- title : строка
Сигналы
Методы
- void accept()
- void done(int result)
- void reject()
- AbstractButton standardButton(StandardButton button)
Подробное описание
Диалог — это всплывающее окно, в основном используемое для краткосрочных задач и краткого общения с пользователем. Аналогично ApplicationWindow и Page, диалог организован на три раздела: header, contentItem и footer.
Заголовок и кнопки диалога
Заголовок диалога (title) отображается в строке заголовка, определяемой стилем, который по умолчанию назначается как заголовок диалога (header).
Стандартные кнопки диалога управляются DialogButtonBox, который по умолчанию назначается в качестве подвала диалога (footer). Свойство standardButtons диалога передается соответствующему свойству блока кнопок. Кроме того, сигналы accepted() и rejected() блока кнопок подключаются к соответствующим сигналам в диалоге.
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() к соответствующим сигналам в диалоге.
Примечание: Назначение DialogButtonBox, ToolBar или TabBar в качестве подвала диалога автоматически устанавливает соответствующие свойства DialogButtonBox::position, ToolBar::position или TabBar::position в Footer.
См. также header.
header : Элемент
Это свойство содержит элемент заголовка диалога. Элемент заголовка размещен вверху и имеет ширину диалога. Значение по умолчанию — null.
Примечание: Назначение DialogButtonBox в качестве заголовка диалога автоматически подключает его сигналы accepted() и rejected() к соответствующим сигналам в диалоге.
Примечание: Назначение DialogButtonBox, ToolBar или TabBar в качестве заголовка диалога автоматически устанавливает соответствующие свойства DialogButtonBox::position, ToolBar::position или TabBar::position в Header.
См. также footer.
result : int
Это свойство содержит код результата.
Стандартные коды результатов:
| Константа | Описание |
|---|---|
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.
END_OF_DOCUMENT_MARKERtitle : string
Это свойство содержит заголовок диалогового окна.
Заголовок отображается в заголовке диалогового окна.
Dialog {
title: qsTr("About")
Label {
text: "Lorem ipsum..."
}
} Документация по сигналам
accepted()
Этот сигнал излучается, когда диалоговое окно было принято либо интерактивно, либо вызовом accept().
Примечание: Этот сигнал не излучается при закрытии диалогового окна с помощью close() или установке visible в false.
См. также rejected().
applied()
Этот сигнал излучается, когда нажата стандартная кнопка Dialog.Apply.
Этот сигнал был представлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также discarded() и reset().
discarded()
Этот сигнал излучается, когда нажата стандартная кнопка Dialog.Discard.
Этот сигнал был представлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также reset() и applied().
helpRequested()
Этот сигнал излучается, когда нажата стандартная кнопка Dialog.Help.
Этот сигнал был представлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также accepted() и rejected().
rejected()
Этот сигнал излучается, когда диалоговое окно было отклонено либо интерактивно, либо вызовом reject().
Примечание: Этот сигнал не излучается при закрытии диалогового окна с помощью close() или установке visible в false.
См. также accepted().
reset()
Этот сигнал излучается, когда нажата стандартная кнопка Dialog.Reset.
Этот сигнал был представлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также discarded() и applied().
Документация по методам
void accept()
Закрывает диалоговое окно и излучает сигнал accepted().
void done(int result)
Закрывает диалоговое окно, устанавливает значение result и излучает accepted() или rejected() в зависимости от того, является ли результат Dialog.Accepted или Dialog.Rejected соответственно.
Этот метод был представлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также accept(), reject() и result.
void reject()
Закрывает диалоговое окно и излучает сигнал rejected().
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/archives/qt-5.11/qml-qtquick-controls2-dialog.html