Spec-Zone.ru › Qt 5.15

Тип действия QML

Действие предоставляет абстрактное действие пользовательского интерфейса, которое может быть привязано к элементам. Подробнее...

Заявление об импорте: import QtQuick.Controls 1.4
  • Список всех членов, включая унаследованные члены

Свойства

  • checkable : bool
  • checked : bool
  • enabled : bool
  • exclusiveGroup : ExclusiveGroup
  • имяИконки : string
  • iconSource : url
  • сочетаниеКлавиш : keysequence
  • текст : string
  • подсказка : string

Сигналы

  • toggled(checked)
  • triggered(QtObject source)

Методы

  • void trigger(QtObject source)

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

Во многих приложениях многие распространенные команды могут вызываться через меню, кнопки панели инструментов и сочетания клавиш. Поскольку пользователь ожидает, что каждая команда будет выполняться одинаково независимо от используемого пользовательского интерфейса, полезно представлять каждую команду как действие.

Действие может быть привязано к пункту меню и кнопке панели инструментов, и оно будет автоматически поддерживать их синхронизацию. Например, в текстовом редакторе, если пользователь нажимает на кнопку «Жирный» на панели инструментов, пункт меню «Жирный» автоматически будет отмечен.

QtQuick Controls поддерживает действия в Button, ToolButton и MenuItem.

    ...
    Action {
        id: copyAction
        text: "&Copy"
        shortcut: StandardKey.Copy
        iconName: "edit-copy"
        enabled: (!!activeFocusItem && !!activeFocusItem["copy"])
        onTriggered: activeFocusItem.copy()
    }

    Action {
        id: cutAction
        text: "Cu&t"
        shortcut: StandardKey.Cut
        iconName: "edit-cut"
        enabled: (!!activeFocusItem && !!activeFocusItem["cut"])
        onTriggered: activeFocusItem.cut()
    }

    Action {
        id: pasteAction
        text: "&Paste"
        shortcut: StandardKey.Paste
        iconName: "edit-paste"
        enabled: (!!activeFocusItem && !!activeFocusItem["paste"])
        onTriggered: activeFocusItem.paste()
    }

    toolBar: ToolBar {
        RowLayout {
            anchors.fill: parent
            anchors.margins: spacing
            Label {
                text: UI.label
            }
            Item { Layout.fillWidth: true }
            CheckBox {
                id: enabler
                text: "Enabled"
                checked: true
            }
        }
    }

    menuBar: MenuBar {
        Menu {
            title: "&File"
            MenuItem {
                text: "E&xit"
                shortcut: StandardKey.Quit
                onTriggered: Qt.quit()
            }
        }
        Menu {
            title: "&Edit"
            visible: tabView.currentIndex == 2
            MenuItem { action: cutAction }
            MenuItem { action: copyAction }
            MenuItem { action: pasteAction }
        }
        Menu {
            title: "&Help"
            MenuItem {
                text: "About..."
                onTriggered: aboutDialog.open()
            }
        }
    }
    ...

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

checkable : bool

Определяет, можно ли отметить или переключить пункт меню. По умолчанию false.

См. также checked и exclusiveGroup.

checked : bool

Если действие checkable, это свойство отражает его состояние проверки. По умолчанию false. Его значение также ложно, когда checkable ложно.

См. также toggled и exclusiveGroup.

enabled : bool

Определяет, разрешено ли действие и может ли оно быть вызвано. По умолчанию true.

См. также trigger() и triggered.

exclusiveGroup : ExclusiveGroup

Если действие checkable, к нему можно прикрепить ExclusiveGroup. Все действия, разделяющие одну и ту же группу эксклюзивности, становятся взаимоисключающими для выбора, что означает, что только последнее отмеченное действие фактически будет отмечено.

По умолчанию null, что означает, что не ожидается эксклюзивного поведения.

См. также checkable и checked.

iconName : string

Устанавливает имя иконки для действия. Это выберет иконку с заданным именем из текущей темы.

По умолчанию пустая строка.

Примечание: Для этого свойства требуется QApplication.

iconSource : url

Устанавливает URL-адрес файла или ресурса иконки для действия. По умолчанию пустой URL.

shortcut : keysequence

Сочетание клавиш, привязанное к действию. Сочетание клавиш может быть строкой или стандартной клавишей.

По умолчанию пустая строка.

Action {
    id: copyAction
    text: qsTr("&Copy")
    shortcut: StandardKey.Copy
}

text : string

Текст для действия. Этот текст отобразится в качестве текста кнопки или заголовка в пункте меню.

Мемоники поддерживаются путем добавления префикса & к букве сочетания клавиш. Например, "\&Open" будет привязывать сочетание Alt-O к пункту меню "Open". Обратите внимание, что не все платформы поддерживают мемоники.

По умолчанию пустая строка.

tooltip : string

Подсказка, которая отображается при наведении курсора на элемент управления, привязанный к этому действию. Не все элементы управления поддерживают подсказки на всех платформах, особенно MenuItem.

По умолчанию пустая строка.

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

toggled(checked)

Вызывается всякий раз, когда свойство checked действия изменяется. Это обычно происходит одновременно с triggered.

Соответствующий обработчик onToggled.

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

См. также checked.

triggered(QtObject source)

Вызывается, когда пункт меню или связанное с ним действие активизировано. Включает объект (source), который инициировал событие, если это уместно (например, кнопка или MenuItem). Вам не нужно вызывать этот сигнал, используйте trigger() вместо этого.

Соответствующий обработчик onTriggered.

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

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

void trigger(QtObject source)

Вызовет сигнал triggered на source, если действие разрешено. Вы можете указать объект source, если действие получит выгоду от знания происхождения запуска (например, для аналитики). Также вызовет сигнал toggled, если оно checkable.

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

Spec-Zone.ru

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