【问题标题】:Can we "click" on edit boxes using Microsoft UIAutomation libraries我们可以使用 Microsoft UIAutomation 库“单击”编辑框吗
【发布时间】:2013-09-03 08:45:55
【问题描述】:

在我的应用程序中,我们有一个 webbrowserpageviewer 控件。打开网页时,用户需要点击网页上的一些编辑框。我们正在尝试使用 UI 自动化库来模拟这种行为。对此有点新,但我看到我们可以使用 InvokePattern 模拟按钮点击,那么有没有类似的方法来模拟编辑框点击?

【问题讨论】:

  • “编辑框”是什么意思?你的意思是<input type=text> 标签吗?
  • 抱歉重播晚了...是的,我的意思是
  • 您要进入编辑(焦点)并将文本推送到它吗?另外,什么是“webbrowserpageviewer”?
  • 你是在编码还是在录音?如果编码,哪种语言?请参阅此链接以获取操作方法msdn.microsoft.com/en-us/library/dd465184(v=vs.100).aspx

标签: ui-automation microsoft-ui-automation uia


【解决方案1】:

据我所知,您有两种编辑文本框的方法:

1.您可以使用 UIA 提供的模式在文本框中添加文本。 这种模式称为 ValuePattern。

在 C# 中,您可以这样做:

ValuePattern vp = element_object.GetCurrentPattern(ValuePattern.Pattern) as ValuePattern;
vp.SetValue(value_to_set);

2.您可以使用AutomationElement属性获取文本框的边界矩形,然后您可以在其中单击。

在c#中获取边界矩形:

automationelement_object.GetCurrentPropertyValue(AutomationElement.BoundingRectangleProperty)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-03
    • 2016-05-03
    • 1970-01-01
    • 2020-08-03
    • 2022-01-23
    • 2020-10-25
    • 2023-02-23
    • 1970-01-01
    相关资源
    最近更新 更多