0

我开发了一个 winform 应用程序。现在我也需要支持叙述者。讲述人从右到左宣布控件名称.ex。我在表单上有 3 个按钮button1, button2, button3. 讲述人读作 Form contains button3, button2, button1.

同样,以另一种形式,我以堆叠的方式一个一个地设置文本框。它从下到上读取文本框名称。

请让我知道如何自定义叙述者的行为。

4

1 回答 1

1

讲述人通过 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);

然后讲述人将按照您期望的顺序宣布按钮。

谢谢,

盖伊

于 2015-07-24T22:12:22.637 回答