我开发了一个 winform 应用程序。现在我也需要支持叙述者。讲述人从右到左宣布控件名称.ex。我在表单上有 3 个按钮button1
, button2
, button3
. 讲述人读作 Form contains button3
, button2
, button1
.
同样,以另一种形式,我以堆叠的方式一个一个地设置文本框。它从下到上读取文本框名称。
请让我知道如何自定义叙述者的行为。
讲述人通过 UI 自动化 API 访问应用程序的编程接口。根据您的 UI 的定义方式,该编程界面可能不一定与应用程序中显示的视觉效果相匹配。对于您的应用程序,请查看将按钮添加到表单的代码。例如,也许在你的 InitializeComponent() 中,你有这样的东西......
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
this.Controls.Add(this.button1);
这意味着在公开的编程界面中,button3 是第一个按钮,而 button1 是最后一个按钮,无论它们在应用程序中的可视位置显示。Windows SDK 附带的 Inspect 工具可以向您显示编程界面以及按钮的显示顺序。
如果您确实看到按上述顺序将按钮添加到表单中,请尝试重新排列代码,以...
this.Controls.Add(this.button1);
this.Controls.Add(this.button2);
this.Controls.Add(this.button3);
然后讲述人将按照您期望的顺序宣布按钮。
谢谢,
盖伊