辅助功能最佳方案

实现本部分所述的最佳做法有助于确保使用辅助技术产品的用户可以访问应用程序。 其中的许多最佳做法重点关注良好的 UI 设计。 每项最佳实践都包含控件或应用程序的实现信息。 在许多情况下,这些最佳做法中的大部分工作都已包含在控件中。

本主题包含以下各节:

以编程方式访问

本节中的最佳做法确保,辅助技术产品可对 UI 信息和功能进行充分的编程访问。

对所有 UI 元素和文本启用编程访问

应用程序的 UI 元素必须能够以编程方式访问辅助技术产品。 所有 UI 元素都必须具有标签,它们必须公开所有属性值,并且必须引发所有相应的事件。 对于标准 Windows 控件,大部分工作已通过 microsoft UI 自动化和 microsoft Active Accessibility 代理对象完成。 但是,自定义控件需要额外的工作来确保它们完全公开,以便辅助技术供应商可以标识和操作应用程序 UI 的元素。

遵循此最佳做法,辅助技术供应商可以标识和操作产品 UI 的元素。

在 UI 对象、帧和页面上添加名称、标题和说明

由于辅助技术产品(尤其是屏幕阅读器)使用标题来了解导航方案中的帧、对象或页面的位置,因此标题必须是非常描述性的。 好的描述性标题使辅助技术产品能够识别和操作控件和应用程序中的 UI 元素。 例如,如果用户已深入导航到某个特定区域,"Microsoft 网页" 的网页标题毫无用处。 描述性标题对于盲人和依赖于屏幕阅读器的用户至关重要。

遵循此最佳做法,辅助技术产品可在示例控件和应用程序中识别和操作 UI。

确保编程事件可以由所有 UI 活动触发

每当 UI 元素的状态发生更改时,应用程序应引发事件。

按照此最佳实践,辅助技术产品可以侦听 UI 中的更改并通知用户有关这些更改的信息。

用户设置

本节中的最佳做法可确保控件或应用程序不重写用户设置。

请遵守所有系统范围内设置,同时请勿干扰辅助功能函数

用户可以使用 "控制面板" 设置一些系统范围内的标志;可以通过编程方式设置其他标志。 控件或应用程序不应更改这些设置。 此外,应用程序必须支持其主机操作系统的辅助功能设置。

遵循此最佳做法,用户可设置辅助功能设置并了解应用程序将不会更改这些设置。

可视 UI 设计

本节中的最佳做法可确保控件或应用程序有效地使用颜色和图像,并可供辅助技术产品使用。

不 Hard-Code 颜色

色盲、视力较差,或者使用黑白屏幕的用户可能无法使用带有硬编码颜色的应用程序。

遵循此最佳做法,用户可根据各自需求调整颜色组合。

支持高对比度和所有系统显示特性

应用程序不应中断或禁用用户选定的系统范围内对比度设置、颜色选择或其他系统范围内显示设置和特性。 用户采用的系统范围内设置可增强应用程序的辅助功能,因此应用程序不应禁用或忽略它。 应在前景色背景色组合中正确运用颜色,以确保提供适当的对比度。 不应混合使用不相关的颜色,且不应颠倒颜色。

很多用户需要特定的高对比度组合,例如黑色背景中的白色文本。 绘制这些对比色(如白色背景上的黑色文本)会导致背景渗入前景,使一些用户阅读困难。

确保任何 DPI 设置可以正确缩放所有 UI

确保所有 UI 元素都可以按英寸的任何点进行正确缩放 (dpi) 设置。 此外,请确保 UI 元素适合 1024 x 768 屏幕,每英寸120点 (dpi) 。

键盘导航

本节中的最佳做法可确保依赖于键盘的用户可以访问所有应用程序功能。

为所有 UI 元素提供键盘界面

制表位停止,特别是在仔细规划时,为用户授予另一种导航 UI 的方法。

应用程序应提供以下键盘界面:

  • 用户可与之交互的所有控件的制表位,例如按钮、链接或列表框。
  • 逻辑 tab 键顺序。

显示键盘焦点

用户需要知道哪个对象具有键盘焦点,以便可以预测击键效果。 若要突出显示键盘焦点,请使用颜色、字体或图形(如矩形)或放大倍数。 若要在听觉上突出键盘焦点,请更改音量、音调或音质。

为避免混淆,应用程序应隐藏所有可视焦点指示器并调暗位于非活动窗口(或窗格)中的选择内容。

应用程序使用键盘焦点执行以下操作:

  • 一项应始终具有键盘焦点。
  • 键盘焦点应可见且明显。
  • 应在视觉上突出显示选定项和/或重点项。

支持导航标准和功能强大的导航方案

键盘导航的不同方面为用户提供了用于浏览 UI 的不同方式。

应用程序应提供以下键盘界面:

  • 所有命令、菜单和控件的快捷键和带下划线的访问键。
  • 重要链接的键盘快捷方式。
  • 所有菜单项都有一个访问键;所有按钮都有加速键,所有命令都有加速键。

不要让鼠标位置干扰键盘导航

鼠标位置不应干扰键盘导航。 例如,如果鼠标定位在某个位置并且用户使用键盘导航,则不应单击鼠标(除非用户启动)。

多模式接口

本节中的最佳做法可确保应用程序 UI 包含视觉对象元素的替代项。

提供非文本元素的用户可选等效项

对于每个非文本元素,都会提供文本、脚本或音频说明(如 alt 文本、标题或可视反馈)的用户可选等效项。

非文本元素涵盖各种 UI 元素,包括图像、图像映射区域、动画、小程序、框架、脚本、图形按钮、声音、独立的音频文件和视频。 当非文本元素包含用户需要访问的可视信息、语音或一般音频信息时,这些元素很重要,以便了解 UI 的内容。

使用颜色,且同时提供颜色的替换项

使用颜色来增强、强调或重申通过其他方式显示的信息,但请勿仅使用颜色传达信息。 色盲或者使用单色显示的用户需要颜色的替换项。

通过独立于设备的调用使用标准输入 API

独立于设备的调用可确保所有输入设备平等对待,同时为辅助技术产品提供有关 UI 的所需信息。

Windows自动化 API 概述