我如何使用 AutoIt 在文本框中输入一个值?

问题描述 投票:2回答:3

我有两个文本框和一个按钮。我如何在文本框中输入一个值,然后按下 进入 到按钮,使用 AutoIt?

autoit
3个回答
4
投票

举个例子就这么简单。

$gui = GUICreate("Test GUI", 640, 280)
$input = GUICtrlCreateInput("Input field", 10, 10, 620, 20)
$edit = GUICtrlCreateEdit("Edit Control with Text", 10, 40, 620, 200)
$button = GUICtrlCreateButton("Button", 10, 250, 620, 20)

GUISetState(@SW_SHOW)

Sleep(2000)

ControlSetText("Test GUI", "", $input, "New text for the input")
ControlSetText("Test GUI", "", $edit, "New text for the edit... with some bla bla bla...")
Sleep(500)
ControlClick("Test GUI", "", $button)
Sleep(500)
ControlFocus("Test GUI", "", $input)

Sleep(4000)

ControlSetText("Test GUI", "", "[CLASS:Edit; INSTANCE:1]", "New text for the input, referenced as Edit1")
ControlSetText("Test GUI", "", "[CLASS:Edit; INSTANCE:2]", "New text for the edit..., referenced as Edit2 with some bla bla bla...")
Sleep(500)
ControlClick("Test GUI", "", "[CLASS:Button; INSTANCE:1]")
Sleep(500)
ControlFocus("Test GUI", "", $input)

Sleep(4000)

另外,你的英文很不清楚,你应该在你的问题上多花点心思;-)

如果你想知道,什么 "[CLASS:Edit; INSTANCE:1]" 你一定要用,试试 "AutoIt v3窗口信息" 工具. 并开始阅读一些相当不错的文档。祝您好运!


3
投票
  1. 你可以使用ControlSend函数,如下所示。

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

  2. 也可以通过使用发送函数来实现。

    Send("用户名") Send("{TAB}") Send("密码") Send("{ENTER}")


-2
投票
AutoItX x = new AutoItX(); 
x.controlSend("Login Station - Third party App","","","StringToBeEntered",false);
© www.soinside.com 2019 - 2024. All rights reserved.