QML类型:Action、ActionGroup

一、Action

一、描述

Action 代表一个抽象的用户界面动作,它可以有快捷方式并且可以分配给菜单项和工具栏按钮。

动作可能包含文本、图标和快捷方式。动作通常由用户通过菜单项、工具栏按钮或键盘快捷键触发。可选中的地址在触发时切换其选中状态。

Action {
    id: copyAction
    text: qsTr("&Copy")
    icon.name: "edit-copy"
    shortcut: StandardKey.Copy
    onTriggered: window.activeFocusItem.copy()
}

二、属性成员

1、checkable : bool

动作是否可选中。触发时,可选中动作在选中和未选中之间切换。

2、checked : bool

是否已选中。

3、enabled : bool

动作是否启用。

4、icon group

  • icon.cache : bool:是否应缓存图标。默认值是true。
  • icon.color : color:图标的颜色。
  • icon.height : int:图标的高度。图标的高度不会超过这个值,但会在必要时缩小。
  • icon.name : string:要使用的图标的名称。该图标将从平台主题加载。如果在主题中找到图标,即使 icon.source 被设置,也将始终使用它。如果找不到图标,将使用 icon.source 代替。
  • icon.source : url:要使用的图标的名称。该图标将作为常规图像加载。
  • icon.width : int:图标的宽度。图标的宽度不会超过这个值,但会在必要时缩小。

5、shortcut : keysequence

动作的快捷方式。

Action {
    shortcut: "Ctrl+E,Ctrl+W"
    onTriggered: edit.wrapMode = TextEdit.Wrap
}

6、text : string

地址的文本描述。

三、信号成员

1、toggled(QtObject source)

切换动作时会发出此信号。source 参数标识切换地址的对象。

2、triggered(QtObject source)

该信号在动作被触发时发出。source 参数标识触发操作的对象。

四、函数成员

1、void toggle(QtObject source)

切换动作并在启用时发出 toggled(),并定义了一个可选的源对象。

2、void trigger(QtObject source)

触发动作并在启用时发出trigger(),并定义了一个可选的源对象。


ActionGroup

一、描述

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")
    }
}

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

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
}

二、属性成员

1、[default] actions : list<Action>

组中的动作列表。

2、checkedAction : Action

互斥组中选中的动作,如果该组是非互斥的,则为 null。

3、enabled : bool

动作组是否启用。

为 false,则禁用组中的所有操作。为 true,则启用组中的所有动作,除非明确禁用。

4、exclusive : bool

动作组是否互斥的。默认值是true。

三、附加属性成员

1、ActionGroup.group : ActionGroup

此属性将动作附加到操作组。

四、信号成员

1、triggered(Action action)

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

该信号便于为同一组中的所有动作实现公共信号处理程序。

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

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

五、函数成员

1、void addAction(Action action)

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

2、void removeAction(Action action)

从动作组中删除动作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值