如何在文本字段上键入文本,然后使用AutoIt单击按钮

时间:2014-04-02 08:46:53

标签: autoit

我有一个JNLP文件(比如Test.jnlp)。我已经使用AutoIt打开了该文件。我打开Test.jnlp文件的代码:

$d = "D:\Ripon\"
$f = "Test.jnlp"
Run("cmd /c " & " """ & $d & $f & """ ", "", @SW_HIDE)

打开.jnlp文件后,会出现一个登录屏幕。我的要求是输入用户名和密码 - >单击“登录”按钮 由于我找不到元素的身份(文本字段,按钮),我没有做到这一点。请帮帮我。

enter image description here

2 个答案:

答案 0 :(得分:4)

有几种类型的GUI不能为您提供控件的ID,几乎所有的Java工具包都是其中的一个例子。

有几种方法可以自动化它们:

  1. 假设窗口总是相同的大小(这通常是一个非常安全的假设),那么AutoIt将允许您单击给定位置的窗口,或者仅将文本发送到该窗口。例如,在上面的例子中,您可以尝试以下代码:

    ControlSend("Window Title", "", "", "MyUsername{TAB}MyPassword{ENTER}")

  2. 另一种解决方案是使用辅助功能。如果你google' autoit java accessibility bridge'我相信你会得到像this one这样的结果。我个人从未尝试过。

  3. 还有一个java access bridge不知道它是如何工作的,但其他人已经使用了一段时间。
  4. 作为最后的手段,您必须模仿用户鼠标和键盘操作。这真的不是最好的解决方案,但至少你可以肯定它会起作用。

答案 1 :(得分:1)

以下代码片段应该有效:

Send("username")
Send("{TAB}")
Send("password")
Send("{ENTER}")