我正在使用MS Access 2010中的图书馆系统。其中一个挑战是我们有盲人和其他有视觉障碍的用户访问系统。
他们使用屏幕阅读软件NVDA,问题是该软件不会立即读取组合框的内容。要解决这个问题,必须按CAPSLOCK + UP或INSERT + UP(NVDA命令)来读取焦点的当前行。因此,他们目前正在逐行手动知道它们的位置。
我想通过Sendkeys自动执行此操作,但据我所知,除了Alt,Shift和Ctrl之外无法组合键。这是我正在使用的一小段代码,以便向下键降低组合框:
Private Sub Username_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyDown Then
Me.ActiveControl.Dropdown
End If
End Sub
我想添加这个代码,以便按下向上和向下键通过INSERT + UP的Sendkeys或者我可能不知道的其他方式触发组合框的读取。这可能吗?有任何想法吗?
提前致谢。
我想知道是否有人提出正确的问题。这听起来像Access中的一个问题,你正试图解决。我不熟悉Access本身(所以我可能不应该评论)但我对可访问性非常熟悉。
您是否正在选中单元格中的复选框,或弹出对话框中的复选框,例如对列进行排序并希望选择/取消选择某些过滤器时?问题是复选框本身没有要读取的标签,或者它是否有标签,但标签只能使用“全部读取”快捷键(例如ins + down)或“读取当前”来读取(INS +了)?
要用html术语来表示,下面的代码将显示一个复选框,在视觉上看起来像复选框有一个标签,但屏幕阅读器不知道有标签。
<input type="checkbox">Do you feel well today?
屏幕阅读器只会说“复选框”。但是,如果使用<label>
元素将标签绑定到复选框
<input type="checkbox" id="mycheck"><label for="mycheck">Do you feel well today?</label>
然后屏幕阅读器确实知道复选框有一个标签,并会说“你今天感觉良好吗?,复选框,未选中”。
我知道这与原始问题相切,但我想知道您是否在Access中创建了一个复选框,或者您是否尝试导航到Access中本机存在的复选框(例如排序对话框)。如果您要创建一个复选框,那么类似于您必须将标签与html中的复选框关联的方式,我想知道是否有办法将标签与Access中的复选框相关联。如果是这样,那么您将不需要您的解决方法。