【问题标题】:Getting the path of a button using UIAutomation使用 UIAutomation 获取按钮的路径
【发布时间】:2019-12-06 10:50:07
【问题描述】:

我正在尝试获取另一个应用程序唯一路径的按钮,因为我想保存它以便在我在另一次运行时关闭应用程序后再次访问它。我对保存路径的任何可能方式感兴趣,我可以按照该路径自动访问按钮。

我得到了如下代码中的按钮,但我不知道如何保存它的路径(如在日志中)以便再次访问它。

GetCursorPos(&cursorPos);
CComPtr<IUIAutomationElement> elFromPoint;
_automation->ElementFromPoint(cursorPos, &elFromPoint);

【问题讨论】:

    标签: c# c++ ui-automation microsoft-ui-automation


    【解决方案1】:

    UI 自动化中的控件没有绝对的“路径”。您可以从元素开始遍历自动化树,直到到达桌面,如下所示:How to walk automation tree,并在遍历树时创建元素的路径。您可以使用此存储的“路径”来查找您的元素,方法是从桌面向下遍历树或使用 UI 自动化提供的搜索机制来搜索元素的特定属性。请记住,某些控件可能无法确定,因为没有单个属性可用作控件的 ID(AutomationId 取决于提供者的实现),在这种情况下,您需要在存储的元素属性之间实现匹配功能以及您找到的实际元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多