Spec-Zone.ru › Qt 5.9

Тип QML DialogButtonBox

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

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

Container

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

Свойства

  • alignment : flags
  • delegate : Component
  • position : перечисление
  • standardButtons : перечисление

Прикрепленные свойства

  • buttonBox : DialogButtonBox
  • buttonRole : перечисление

Сигналы

  • void accepted()
  • void clicked(AbstractButton button)
  • void helpRequested()
  • void rejected()

Методы

  • AbstractButton standardButton(StandardButton button)

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

Диалоговые окна и информационные сообщения обычно представляют кнопки в порядке, соответствующем рекомендациям по интерфейсу для этой платформы. Постоянно разные платформы имеют свои диалоговые кнопки в разном порядке. 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, RejectRole, или HelpRole, соответственно излучаются сигналы accepted(), rejected() или helpRequested().

См. также 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 Кнопка применяет текущие изменения.

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

void accepted()

Этот сигнал излучается, когда нажимается кнопка, определенная как AcceptRole или YesRole.

См. также rejected(), clicked() и helpRequested().

void clicked(AbstractButton button)

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

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

void helpRequested()

Этот сигнал излучается, когда нажимается кнопка, определенная как HelpRole.

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

void rejected()

Этот сигнал излучается, когда нажимается кнопка, определенная как RejectRole или NoRole.

См. также accepted(), helpRequested() и clicked().

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

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/qt-5.9/qml-qtquick-controls2-dialogbuttonbox.html

Spec-Zone.ru

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