Skip to content

对界面键盘交互的一些建议 #66

@XHG20033

Description

@XHG20033

  我也不知道该算 bug 还是算功能请求,所以就空 issue 写了。

背景

  我是一个视障者(盲人),偶有制作视频的需求,之前经他人介绍了解该软件,这次的视频字幕也是用它完成,一些小众名词都能识别准确这让我惊叹!

  因我们的操作方式与大家差异较大(键盘 vs 鼠标),我想先简单介绍一下。在屏幕朗读软件(下称“读屏”)的辅助下,我们:

  • 使用 Tab 键切换系统焦点,例如在桌面上按 Tab 键可在左下角的 Windows 徽标按钮、运行窗口工具栏以及托盘之间切换,使用 Shift+Tab 则反向浏览。

  • 使用四个方向键在一个焦点中浏览,如 Tab 浏览到桌面时,使用方向键可浏览桌面图标;或在编辑框中使用方向键移动闪烁的光标以浏览内容。

  • 使用空格键 (Space) 或回车键 (Enter) 激活当前焦点,等同于鼠标单击,如 Tab 至屏幕左下角的 Windows 徽标按钮时,按下空格或回车键可打开开始菜单。

  对键盘交互的建议:

1、选择接口与导出格式

  使用 Tab 键浏览时,可访问到这两个按钮,但按下空格或回车键,无法展开菜单进行选择。

  建议:加入按下空格键或回车键的响应事件,执行功能等同于鼠标单击。

2、显示文件的表格在键盘交互上有些问题

  当选择单个或多个文件,使用 Tab 键经过“选择文件”按钮,即进入表格。表格内通过方向键可顺畅浏览,但 Tab 键无法离开表格,只能在表格中循环浏览。

  建议:当表格接收到 Tab 键时,则“开始处理”按钮获得焦点,当在表格中按下 Shift+Tab 键时,“选择文件”按钮获得焦点。

3、其余按钮回车键均无效

  如果愿意,其他按钮可加入回车键响应,当按下回车键时,执行与鼠标单击相同效果。这一条相对于其余没那么重要!

4、关于按钮与返回按钮无键盘焦点

  有个 About,我今天才注意到,不点开还不知道程序用 PyQt5 开发……建议使用 Tab 键可浏览到 About 与 Back,并支持空格或回车点击。展示关于信息的地方盲猜现在使用的是 Label (标签)类似的控件,能改编辑框最好,键盘可直接访问,不改也影响不大。

5、最大化、最小化与关闭

  使用 Tab 键浏览窗口,最开始会经过这 3 个按钮,但这 3 个按钮均无读屏可读取的文字,所以我听到的是“按钮”、“按钮”、“按钮”!

  建议:加上可使读屏获取的文字,如“最小化”、“关闭”、“最大化”。但我知道视觉上对这些按钮并不需要清楚的文字提示,用“×”就可以表示“关闭”。如果开发语言中对于 UI 控件有提供 Accessible name 属性,可在里面填写文字,该文字只有读屏可获取,视觉上并不会呈现。

  或者直接将这组按钮设置为 Tab 键不可访问,该属性在 C# 中叫 TabStop: button1.TabStop = False ,我不懂 PyQt5 不知道有没有类似属性。对视障者而言,最大化最小化可通过 Windows+上(下)方向键实现,关闭可通过 Alt+F4 实现,故可以不需要这些按钮。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions