Spec-Zone.ru › Qt 5.11

Тип QML DialogButtonBox

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

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

Container

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

Свойства

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

Присоединенные свойства

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

Сигналы

  • accepted()
  • applied()
  • clicked(AbstractButton button)
  • discarded()
  • helpRequested()
  • rejected()
  • reset()

Методы

  • 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

Spec-Zone.ru

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