2012-07-27 365 views

回答

2

您可以通过Send("{Tab}")Send("{Tab 5}")的输入框正常循环5次按Tabulator-Key。然后你可以使用正常的Send("input text")东西来插入你想要的东西。您也可以使用ClipPut("content")以填补一些东西剪贴板,然后只使用Send("^v")(“^”等于“{按Ctrl}”中,看到Send Key List)插入无论你放在那里 - 任选ClipGet()之前保存剪贴板内容然后再恢复。通常在WinActivate("Window Title")之前,要将窗口设置为活动状态,您需要将键击发送到该窗口。祝你好运!

最后但并非最不重要的......如果你的输入元素的位置是固定的,你可以点击它来激活它们,见窗口相对坐标定位Opt("MouseCoordMode", 0),然后使用类似MouseClick("primary", 20, 65, 1, 0)的东西。

1

控制ID不是解决控制问题的唯一方法。您也可以使用控件类和实例。例如

ControlSetText("Untitled - Notepad", "", "[CLASS:Edit; INSTANCE:1]", "hello world!") 

您可以使用AutoIt附带的AutoIt Window Info工具获取类/实例的详细信息。

这比发送更安全。但有时使用Send是不可避免的。您也可以使用SendKeepActive,它会在您向其发送按键时尝试保持某个窗口处于活动状态。

相关问题