我正在使用IAccessible对象测试PowerBuilder应用程序。但是我无法从PBDataWindow对象获取新添加的行。是否可以使用挂钩获取PBDataWindow对象。我无法修改应用程序代码,也没有源代码。
问候拉金达尔
可以使用 IAccessible 访问数据窗口控件辅助功能属性,但需要在代码 (IDE) 或运行时中设置这些属性。我怀疑任何使用辅助功能的 Windows 应用程序都是这种情况,除非该语言在未明确提供默认辅助功能属性时为您设置默认辅助功能属性。
如果您无法访问源代码,那么您将不得不查看Microsoft Windows"窗口类名称"以获取对象的句柄,这将具有挑战性,更不用说对象的名称在内存中应用程序的各种实例之间可能不一致。
对于那些希望使用辅助功能并可以访问源代码的人来说,这就是它们的设置方式。您可以为数据窗口对象中的许多不同对象类型和列设置这些内容。
假设:数据窗口控件命名为"dw_invoice"。
在运行时动态设置辅助属性
dw_invoice.AccessibleName = 'InvoiceDatawindow"
dw_invoice.AccessibleDescription = "The current invoice"
dw_invoice.AccessibleRole = DefaultRole!
在开发 IDE 中设置辅助属性
- 选择数据窗口控件
- 突出显示"其他"选项卡
- 输入可访问名称
- 输入辅助功能说明
- 选择"辅助角色"(有关角色的枚举列表,请参阅 PB 帮助)