如何使用TvirtualStringTree Accessiblename或实现可访问性



我可以看到 TVirtualStringTree具有一个称为 AccessibleName的属性,我认为它不起作用,也就是说,将其设置为屏幕读取器(例如nvda(。

我尝试的是在OnGetText事件中进行设置,但这似乎并没有产生任何结果(例如Sender->AccessibleName = "my node name";(。它读取的只是树的全部内容,而不仅仅是一个当前节点,就像我没有对属性进行任何更改相同,如果更改了节点(使用键盘(,它不做任何事情。

应该读取的内容 - 列名 - 列内容 - 另一列名称 - 另一列内容等。就像使用常规TListView一样。

似乎在这里实现了可访问的接口-https://github.com/virtual-treeview/virtual-treeview/blob/master/master/source/vtaccessibility.pas

您能否分享一些示例,如何使用内置可访问性的VirtualTreeView来使屏幕读取器可读组件,因为这些示例确实很少?

编辑(用于未来的Googles(:

解决C 建筑商访问单元链接的相关问题:

在C 构建器中实现VirtualTreeView TVTDDEFAULTACCESSIBLE PROVIDER

编辑2(用于未来的Googles(:

此外,TVirtualStringTree还提供OnGetImageText。此事件用于为树中使用的图像提供可访问的文本,例如,如果您在节点中有多个图像来表示某些状态,则可以使用图像标签来描述这些状态。

您需要将VirtualTrees.Accessibility单元添加到uses部分(项目或您的单元之一(。该单元注册可访问性提供商,它将仅读取树中的集中项目以及列名。

相关内容

  • 没有找到相关文章

最新更新