不会写中文 2023-06-13 16:04 采纳率: 75%
浏览 21
已结题

windows中应用程序的UI自动化元素定位问题

windows中应用程序的UI自动化元素定位问题?
具体情况:我需要定位到windows中的应用程序的UI自动化中的一个按钮的上一级的兄弟级别的文本信息内容,需要获取这个内容,想问问在windows中做应用程序的UI自动化有没有相对定位方式?是不是只有通过元素title和元素control_type以及depth和title,这些(class_name、title、control_type等等)来进行元素定位啊,有相对定位方式吗?

  • 写回答

1条回答 默认 最新

  • 玥轩_521 新星创作者: 网络协议与安全技术领域 2023-06-13 18:49
    关注

    可以使用相对定位的方式来定位UI自动化中的元素。一种可行的方式是使用基于元素的搜索,即通过指定一个已知元素作为搜索的起点,再定位到目标元素。这个已知元素可以是父级元素、兄弟元素、甚至是无关联的同级元素。相比于使用绝对定位,基于元素的搜索更加灵活,可以应对动态的UI界面。

    在您的具体情况下,如果您已经定位到了目标按钮元素,您可以使用GetParentElement()方法来获取其父级元素,然后再使用GetPreviousSiblingElement()方法来获取相邻的兄弟元素,最后从该兄弟元素中获取文本信息内容。 如果您对Windows应用程序UI自动化不太熟悉,可以参考Microsoft官方文档,其中介绍了自动化元素的搜索和定位方法。链接如下:https://docs.microsoft.com/en-us/windows/win32/winauto/uiauto-getting-started.

    同时,如果您的应用程序采用的是Microsoft UI Automation技术,您可以使用UI Automation Verify工具来探测元素和查看属性。这样可以方便您使用相对定位来进行元素定位。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月23日
  • 已采纳回答 6月15日
  • 创建了问题 6月13日