动作组 QML 类型

将动作组合在一起。 更多...

导入声明import QtQuick.Controls
继承

QtObject

属性

附加属性

信号

方法

详细描述

ActionGroup是一个非可视的动作组。互斥的动作组在选项只能一次性选择的动作中使用。

使用ActionGroup最直接的方法是将动作声明为组的子元素。

ActionGroup {
    id: alignmentGroup

    Action {
        checked: true
        checkable: true
        text: qsTr("Left")
    }

    Action {
        checkable: true
        text: qsTr("Center")
    }

    Action {
        checkable: true
        text: qsTr("Right")
    }
}

或者,group附加属性允许在别处声明动作并将它们分配给特定的组。

ActionGroup { id: alignmentGroup }

Action {
    checked: true
    checkable: true
    text: qsTr("Left")
    ActionGroup.group: alignmentGroup
}

Action {
    checkable: true
    text: qsTr("Center")
    ActionGroup.group: alignmentGroup
}

Action {
    checkable: true
    text: qsTr("Right")
    ActionGroup.group: alignmentGroup
}

使用addAction()removeAction()方法可以处理更高级用例。

另见ActionButtonGroup.

属性说明

actions : list<Action> [默认]

这个属性持有该组中的动作列表。

另见group.


checkedAction : Action

这个属性持有在独占组中的当前选中的动作,如果没有或组不是独占的则返回null

默认情况下,它是添加到独占动作组中的第一个选中的动作。

另见exclusive.


enabled : bool

这个属性表示动作组是否启用。默认值是true

如果这个属性是false,则组中的所有操作都被禁用。如果这个属性是true,则组中的所有操作都被启用,除非明确禁用。


exclusive : bool

此属性表示动作组是否为互斥。默认值为true

如果此属性为true,则任何时候组中只能选择一个动作。用户可以触发任何动作来检查它,该动作将替换现有的作为组中已检查动作的动作。

在互斥组中,用户不能通过触发当前已检查的动作来取消检查;相反,必须触发组中的另一个动作,以将该动作设置为组的新的已检查动作。

在非互斥组中,检查和取消检查动作不会影响组中的其他动作。此外,checkedAction属性值是null


附加属性文档

ActionGroup.group : ActionGroup

此属性将一个动作附加到动作组。

ActionGroup { id: group }

Action {
    checked: true
    text: qsTr("Option A")
    ActionGroup.group: group
}

Action {
    text: qsTr("Option B")
    ActionGroup.group: group
}

另请参阅actions


信号文档

triggered(Action action)

当组中的动作被触发时,此信号被发出。

此信号便于实现同一组中所有动作的共同信号处理器。

ActionGroup {
    onTriggered: console.log("triggered:", action.text)

    Action { text: "First" }
    Action { text: "Second" }
    Action { text: "Third" }
}

注意:对应的处理器是onTriggered

另请参阅Action::triggered


方法文档

void addAction(Action action)

将动作添加到动作组。

注意:通常不需要手动将对象添加到动作组。属性actions和附加属性group提供了方便的声明性语法。

另请参阅actionsgroup


void removeAction(Action action)

从动作组中移除动作。

注意:通常不需要手动从动作组中移除对象。属性actions和附加属性group提供了方便的声明性语法。

另请参阅actionsgroup


© 2024 Qt公司限公司。本文件中包含的文档贡献是各自所有者的版权。提供的文档受GNU自由文档许可证版本1.3的条款许可,由自由软件基金会发布。Qt及其相应标志是芬兰和/或其他国家的Qt公司限公司的商标。所有其他商标均为各自所有者的财产。