Тип QML DialogButtonBox
Панель кнопок, используемая в диалоговых окнах. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.4 |
| С момента: | Qt 5.8 |
| Наследует: |
Свойства
- alignment : flags
- delegate : Component
- position : перечисление
- standardButtons : перечисление
Присоединенные свойства
- buttonBox : DialogButtonBox
- buttonRole : перечисление
Сигналы
Методы
- AbstractButton standardButton(StandardButton button)
Подробное описание
Диалоговые окна и информационные окна обычно отображают кнопки в порядке, соответствующем рекомендациям по интерфейсу для этой платформы. Вне зависимости от этого, на различных платформах кнопки диалоговых окон могут располагаться в разном порядке. DialogButtonBox позволяет разработчику добавлять кнопки и автоматически использовать соответствующий порядок для платформы пользователя.
Большинство кнопок диалогового окна следуют определённым ролям. Такие роли включают:
- Принятие или отклонение диалогового окна.
- Запрос помощи.
- Выполнение действий в самом диалоговом окне (например, сброс полей или применение изменений).
Также могут быть альтернативные способы закрытия диалогового окна, которые могут привести к необратимым результатам.
Большинство диалоговых окон имеют кнопки, которые можно считать стандартными (например, кнопки «ОК» и «Отмена»). Иногда удобно создавать эти кнопки стандартным образом.
Существует несколько способов использования DialogButtonBox. Один способ — указать стандартные кнопки (например, «ОК», «Отмена», «Сохранить») и позволить панели кнопок настроить кнопки.
DialogButtonBox {
standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel
onAccepted: console.log("Ok clicked")
onRejected: console.log("Cancel clicked")
} В качестве альтернативы, кнопки и их роли можно указывать вручную:
DialogButtonBox {
Button {
text: qsTr("Save")
DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
}
Button {
text: qsTr("Close")
DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
}
} Вы также можете смешивать обычные кнопки и стандартные кнопки.
Когда кнопка нажата в панели кнопок, сигнал clicked() генерируется для фактической нажатой кнопки. Кроме того, автоматически генерируются следующие сигналы, когда нажимается кнопка с соответствующей ролью (ролями):
| Роль | Сигнал |
|---|---|
AcceptRole, YesRole
|
accepted() |
ApplyRole |
applied() |
DiscardRole |
discarded() |
HelpRole |
helpRequested() |
RejectRole, NoRole
|
rejected() |
ResetRole |
reset() |
См. также Dialog.
Документация свойств
alignment : flags
Это свойство содержит выравнивание кнопок.
Возможные значения:
| Константа | Описание |
|---|---|
undefined |
Кнопки изменяют размер для заполнения доступного места. |
Qt.AlignLeft |
Кнопки выравниваются по левому краю. |
Qt.AlignHCenter |
Кнопки выравниваются по горизонтали по центру. |
Qt.AlignRight |
Кнопки выравниваются по правому краю. |
Qt.AlignTop |
Кнопки выравниваются по верхнему краю. |
Qt.AlignVCenter |
Кнопки выравниваются по вертикали по центру. |
Qt.AlignBottom |
Кнопки выравниваются по нижнему краю. |
delegate : Component
Это свойство содержит делегат для создания стандартных кнопок.
См. также standardButtons.
position : перечисление
Это свойство содержит положение панели кнопок.
Примечание: Если панель кнопок назначена в качестве заголовка или подвала ApplicationWindow или страницы, соответствующее положение устанавливается автоматически.
Возможные значения:
| Константа | Описание |
|---|---|
DialogButtonBox.Header |
Панель кнопок находится вверху, как заголовок окна или страницы. |
DialogButtonBox.Footer |
Панель кнопок находится внизу, как заголовок окна или страницы. |
Значение по умолчанию — Footer.
См. также Dialog::header и Dialog::footer.
standardButtons : перечисление
Это свойство содержит комбинацию стандартных кнопок, используемых панелью кнопок.
DialogButtonBox {
standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel
onAccepted: console.log("Ok clicked")
onRejected: console.log("Cancel clicked")
} Кнопки будут размещены в соответствующем порядке для платформы пользователя.
Возможные флаги:
| Константа | Описание |
|---|---|
DialogButtonBox.Ok |
Кнопка «ОК», определённая с помощью AcceptRole. |
DialogButtonBox.Open |
Кнопка «Открыть», определённая с помощью AcceptRole. |
DialogButtonBox.Save |
Кнопка «Сохранить», определённая с помощью AcceptRole. |
DialogButtonBox.Cancel |
Кнопка «Отмена», определённая с помощью RejectRole. |
DialogButtonBox.Close |
Кнопка «Закрыть», определённая с помощью RejectRole. |
DialogButtonBox.Discard |
Кнопка «Отказ от сохранения» или «Не сохранять», в зависимости от платформы, определённая с помощью DestructiveRole. |
DialogButtonBox.Apply |
Кнопка «Применить», определённая с помощью ApplyRole. |
DialogButtonBox.Reset |
Кнопка «Сбросить», определённая с помощью ResetRole. |
DialogButtonBox.RestoreDefaults |
Кнопка «Восстановить значения по умолчанию», определённая с помощью ResetRole. |
DialogButtonBox.Help |
Кнопка «Справка», определённая с помощью HelpRole. |
DialogButtonBox.SaveAll |
Кнопка «Сохранить все», определённая с помощью AcceptRole. |
DialogButtonBox.Yes |
Кнопка «Да», определённая с помощью YesRole. |
DialogButtonBox.YesToAll |
Кнопка «Да для всех», определённая с помощью YesRole. |
DialogButtonBox.No |
Кнопка «Нет», определённая с помощью NoRole. |
DialogButtonBox.NoToAll |
Кнопка «Нет для всех», определённая с помощью NoRole. |
DialogButtonBox.Abort |
Кнопка «Прервать», определённая с помощью RejectRole. |
DialogButtonBox.Retry |
Кнопка «Повторить», определённая с помощью AcceptRole. |
DialogButtonBox.Ignore |
Кнопка «Пропустить», определённая с помощью AcceptRole. |
DialogButtonBox.NoButton |
Недействительная кнопка. |
См. также standardButton().
Документация присоединённых свойств
[только чтение] DialogButtonBox.buttonBox : DialogButtonBox
Это присоединённое свойство содержит блок кнопок, управляющий данной кнопкой, или null, если кнопка не находится в блоке кнопок.
DialogButtonBox.buttonRole : перечисление
Это присоединённое свойство содержит роль каждой кнопки в блоке кнопок.
DialogButtonBox {
Button {
text: qsTr("Save")
DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
}
Button {
text: qsTr("Close")
DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
}
} Доступные значения:
| Константа | Описание |
|---|---|
DialogButtonBox.InvalidRole |
Кнопка недействительна. |
DialogButtonBox.AcceptRole |
Нажатие на кнопку приводит к принятию диалога (например, ОК). |
DialogButtonBox.RejectRole |
Нажатие на кнопку приводит к отклонению диалога (например, Отмена). |
DialogButtonBox.DestructiveRole |
Нажатие на кнопку вызывает разрушающее изменение (например, для отбрасывания изменений) и закрывает диалог. |
DialogButtonBox.ActionRole |
Нажатие на кнопку приводит к изменениям элементов внутри диалога. |
DialogButtonBox.HelpRole |
Нажатие на кнопку запрашивает помощь. |
DialogButtonBox.YesRole |
Кнопка – кнопка типа "Да". |
DialogButtonBox.NoRole |
Кнопка – кнопка типа "Нет". |
DialogButtonBox.ResetRole |
Кнопка сбрасывает поля диалога до значений по умолчанию. |
DialogButtonBox.ApplyRole |
Кнопка применяет текущие изменения. |
Документация сигналов
accepted()
Этот сигнал излучается, когда нажимается кнопка, определенная как AcceptRole или YesRole.
См. также rejected(), clicked() и helpRequested().
applied()
Этот сигнал излучается, когда нажимается кнопка, определенная как ApplyRole.
Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также discarded() и reset().
clicked(AbstractButton button)
Этот сигнал излучается, когда нажимается кнопка button внутри блока кнопок.
См. также accepted(), rejected() и helpRequested().
discarded()
Этот сигнал излучается, когда нажимается кнопка, определенная как DiscardRole.
Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также reset() и applied().
helpRequested()
Этот сигнал излучается, когда нажимается кнопка, определенная как HelpRole.
См. также accepted(), rejected() и clicked().
rejected()
Этот сигнал излучается, когда нажимается кнопка, определенная как RejectRole или NoRole.
См. также accepted(), helpRequested() и clicked().
reset()
Этот сигнал излучается, когда нажимается кнопка, определенная как ResetRole.
Этот сигнал был добавлен в QtQuick.Controls 2.3 (Qt 5.10).
См. также discarded() и applied().
Документация методов
AbstractButton standardButton(StandardButton button)
Возвращает указанную стандартную кнопку button, или null, если она не существует.
См. также 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-dialogbuttonbox.html