如何从下拉列表(组合框)中选择值?

How to choose value from dropdown (combobox)?

我正在使用 AutoIt 自动化 Windows 应用程序。我试图从下拉菜单中 select 一个值,但我做不到。我的代码:

ControlCommand("Database Select","", "[Name:db_comboBox]", "ShowDropDown")
ControlCommand("DatabaseSelect","","Name:db_comboBox]","SelectString",'Test')
ControlCommand("Database Select","Main Load Settings", "[Name:db_comboBox]", "HideDropDown")

如何从下拉列表中选择一个值?

在下拉列表中选择值的示例代码。

Run("calc.exe")

WinWait("Calculator")

$CALC = WinGetHandle("Calculator")

ControlSend($CALC, "", "[INSTANCE:1]", "^u")
WinActivate($CALC)

$index = ControlCommand($CALC,"Find String","[CLASS:ComboBox; INSTANCE:1]","FindString",'Volume')
ControlCommand($CALC, "", "[CLASS:ComboBox; INSTANCE:1]", "SetCurrentSelection", $index)

应用于您的代码时:

$index = ControlCommand("Database Select","", "[Name:db_comboBox]","FindString",'Test')
ControlCommand("Database Select","", "[Name:db_comboBox]", "SetCurrentSelection", $index)

Milos,感谢您的帮助,下面的代码解决了我的问题。

  ControlClick("Database Select", "", "[Name:db_comboBox]")
  While 1
    Send("{DOWN}")
    $ctext=ControlGetText("Database Select","","[Name:db_comboBox]")
    If $ctext="DB_UKTEST" Then
        ExitLoop
    EndIf
  WEnd

这对我有用 ControlSend("Print", "", "ComboBox1", "[名称:Microsoft Print to PDF]")

这对我有用:

WinWaitActive ("Options (User-Mode)")
ControlCommand("Options (User-Mode)" , "" , "ComboBox1" , "SelectString" , "VNC password")

这个有效

ControlCommand("Database Select","", "[Name:db_comboBox]", "SelectString", $your_text_value)