本页内容

Accessible QML Type (Uncreatable)

启用 QML 项的辅助功能。更多...

Import Statement: import QtQuick

注意:这是一种无法创建的类型。无法在 QML 中实例化该类型。

属性

信号

方法

  • void announce(string message, AnnouncementPoliteness politeness) (since 6.8)

详细说明

本类属于“ Qt Quick 应用程序的无障碍功能”系列。

用户与之交互或向用户提供信息的控件,需要将其信息暴露给无障碍框架。这样,辅助工具才能利用这些信息,使用户能够通过多种方式与应用程序进行交互。这使得Qt Quick 应用程序能够与屏幕阅读器等辅助工具配合使用。

最重要的属性包括name 、description 和role 。

一个简单按钮的实现示例:

Rectangle {
    id: myButton
    Text {
        id: label
        text: "next"
    }
    Accessible.role: Accessible.Button
    Accessible.name: label.text
    Accessible.description: "shows the next page"
    Accessible.onPressAction: {
        // do a button click
    }
}

将 `role ` 设置为 `Button ` 以指示控件的类型。`name ` 是最关键的信息,并与按钮上的文本绑定。名称是对控件的简短而精炼的描述,应反映其视觉标签。在此示例中,仅凭名称无法明确按钮的功能,因此 `description ` 中包含了一段说明。 此外还有一个信号处理程序Accessible.pressAction ,辅助工具可以通过调用该处理程序来触发按钮。该信号处理程序的效果应与轻触或点击按钮时相同。

另请参阅 “无障碍访问”。

属性文档

checkStateMixed : bool

该属性用于标识该项目是否处于部分选中状态。

默认情况下,该属性为false 。

另请参阅 checked 和checkable 。

checkable : bool

该属性用于指定该控件是否可选中(例如复选框或某些按钮)。

默认情况下,此属性为false 。

另请参阅 checked 。

checked : bool

该属性表示该项目当前是否被选中。

默认情况下,该属性的值为false 。

另请参阅 checkable 。

defaultButton : bool

该属性用于指定该控件是否为对话框的默认按钮。

默认情况下,此属性的值为false 。

description : string

此属性用于设置可访问性描述。与名称类似,它用于描述该元素。描述内容可以稍加详细,说明该元素的作用,例如它所描述的按钮的功能。

editable : bool

该属性用于指示该项目是否包含可编辑的文本。

默认情况下,该属性的值为false 。

expandable : bool [since 6.12]

该属性用于指定此项目是否可展开。

默认情况下,该属性的值为false 。

该属性在 Qt 6.12 中引入。

另请参阅 expanded 。

expanded : bool [since 6.12]

该属性表示该项目当前是否处于展开状态。

默认情况下,该属性的值为false 。

该属性自 Qt 6.12 起引入。

另请参阅 ` expandable`。

focusable : bool

该属性用于指定该项目是否可获得焦点。

默认情况下,该属性的值为false ,但角色为CheckBox 、RadioButton 、Switch 、Button 、MenuItem 、PageTab 、EditableText 、SpinBox 、ComboBox 、Terminal 或ScrollBar 的项除外。

另请参阅 focused 。

focused : bool

该属性表示该项目当前是否处于活动焦点状态。

默认情况下,该属性的值为false ,但对于那些调用QQuickItem::hasActiveFocus()时返回true 的项目,该属性将返回true 。

另请参阅 focusable 。

id : string

此属性用于为对象设置一个标识符。它可用于为 UI 测试提供稳定的标识符。默认情况下,该标识符设置为 QML 对象的 ID。如果未设置 ID,则使用默认值QAccessible::Identifier 。

ignored : bool

该属性用于指定辅助功能框架是否应忽略此项。

有时,某个项目属于应被视为一个整体的项目组。例如,两个标签在视觉上可能紧邻放置,但实际上是独立的项目。出于无障碍访问的目的,它们应被视为一个整体,因此由一个具有正确几何形状的第三个不可见项目来表示。

例如,速度显示器会添加“m/s”作为较小的标签:

Row {
    Label {
        id: speedLabel
        text: "Speed: 5"
        Accessible.ignored: true
    }
    Label {
        text: qsTr("m/s")
        Accessible.ignored: true
    }
    Accessible.role: Accessible.StaticText
    Accessible.name: speedLabel.text + " meters per second"
}

默认情况下,此属性值为false 。

labelFor : Item [since 6.10]

该属性存储了此项所代表的对象。

设置此属性会自动为另一个对象建立labelledBy 关系。

默认情况下,该属性为undefined 。

该属性在 Qt 6.10 中引入。

labelledBy : Item [since 6.10]

该属性存储用作此项标签的项目。

设置此属性会自动为另一个对象建立“labelFor ”关系。

默认情况下,此属性为undefined 。

该属性在 Qt 6.10 中引入。

multiLine : bool

该属性用于指示该项目是否包含多行文本。

默认情况下,该属性值为false 。

name : string

此属性用于设置可访问名称。以按钮为例,该属性应与其文本建立绑定。通常,此属性应设置为一个简单、简洁且易于人类阅读的名称。请勿包含要表示的控件类型,仅需填写名称即可。

passwordEdit : bool

该属性用于指示此项目是否为密码文本编辑框。

默认情况下,此属性的值为false 。

pressed : bool

该属性表示该控件是否被按下(例如,鼠标点击时的按钮)。

默认情况下,该属性值为false 。

readOnly : bool

该属性表示文本字段为只读。

当角色为QAccessible::EditableText 且被设置为只读时,此属性才起作用。默认情况下,该属性值为false 。

role : enumeration

此标志用于设置控件的语义类型。例如,按钮的类型应为“Button”。其值必须是以下选项之一:QAccessible::Role 。

某些角色具有特殊的语义。例如,要实现复选框,则需要提供“checked”属性。

角色属性与信号说明
所有交互式元素focusable 以及focused所有用户可交互的元素都应将 `focusable` 属性设置为 `true `,并在获得焦点时将 `focus ` 属性设置为 `true `。即使对于在纯触控设备上运行的应用程序,这一点也至关重要,因为屏幕阅读器通常会实现一种虚拟焦点,可以在各个项目之间移动。
按钮、CheckBox 、RadioButton 、开关Accessible.pressAction按钮应具有一个名为onPressAction 的信号处理程序。该信号可能由屏幕阅读器等辅助工具触发。其实现行为应与鼠标点击或点击按钮的效果一致。
CheckBox、RadioButton 、开关checkable,checked,Accessible.toggleAction复选框的选中状态。在“按下”、“选中”和“取消选中”操作时更新。
滑块,SpinBox ,旋钮,ScrollBarvalue,minimumValue,maximumValue,stepSize这些属性反映了控件的状态及其可能的取值。
滑块、SpinBox 、旋钮、ScrollBarAccessible.increaseAction,Accessible.decreaseAction用于增加和减少元素值的操作。

searchEdit : bool

该属性用于标识该项目是否为搜索查询的输入内容。该属性仅对可编辑文本生效。

默认情况下,此属性的值为false 。

selectable : bool

该属性用于确定该项目是否可被选中。

默认情况下,该属性为false 。

另请参阅 selected 。

selectableText : bool

该属性用于指示该项目是否包含可选中的文本。

默认情况下,该属性的值为false 。

selected : bool

该属性表示此项目是否被选中。

默认情况下,该属性值为false 。

另请参阅 ` selectable`。

Signal 文档

decreaseAction()

当从屏幕阅读器等辅助工具收到“减少”操作时,会发出此信号。

注意: 相应的处理程序 为onDecreaseAction 。

increaseAction()

当从屏幕阅读器等辅助工具接收到“增加”操作时,会发出此信号。

注意: 相应的处理程序 为onIncreaseAction 。

nextPageAction()

当从屏幕阅读器等辅助工具接收到“下一页”操作时,会发出此信号。

注意: 相应的处理程序 为onNextPageAction 。

pressAction()

当接收到来自屏幕阅读器等辅助工具的点击操作时,会发出此信号。

注意: 相应的处理程序 为onPressAction 。

previousPageAction()

当从屏幕阅读器等辅助工具接收到上一页操作时,会发出此信号。

注意: 相应的处理程序 为onPreviousPageAction 。

scrollDownAction()

当接收到来自屏幕阅读器等辅助工具的向下滚动操作时,会触发此信号。

注意: 相应的处理程序 为onScrollDownAction 。

scrollLeftAction()

当从屏幕阅读器等辅助工具接收到向左滚动操作时,会发出此信号。

注意: 相应的处理程序 为onScrollLeftAction 。

scrollRightAction()

当从屏幕阅读器等辅助工具接收到向右滚动操作时,会触发此信号。

注意: 相应的处理程序 为onScrollRightAction 。

scrollUpAction()

当接收到来自屏幕阅读器等辅助工具的向上滚动操作时,会触发此信号。

注意: 相应的处理程序 为onScrollUpAction 。

showOnScreenAction()

当辅助工具(如屏幕阅读器)检测到一个部分可见的元素并请求将其完全显示时,会发出此信号。

注: 相应的处理程序 为onShowOnScreenAction 。

toggleAction()

当接收到来自屏幕阅读器等辅助工具的切换操作时,会发出此信号。

注意: 相应的处理程序 是onToggleAction 。

方法文档

[since 6.8] void announce(string message, AnnouncementPoliteness politeness)

触发一个带有message 的公告事件,礼貌级别为politeness 。

该方法在 Qt 6.8 中引入。

另请参阅 QAccessibleAnnouncementEvent 。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.