ControlCommand
Function
ControlCommand
Description
Sends a command to a control.
Syntax
ControlCommand ( "title", "text", controlID, "command" [, "option"] )
Parameters
title | The title/hWnd/class of the window to access. |
text | The text of the window to access. |
controlID | The control to interact with. See <a href="../intro/controls.htm">Controls</a>. |
command | The command to send to the control. |
option | [optional] Additional parameter required by some commands. |
ReturnValue
Depends on command as table below shows. In case of an error (such as an invalid command or window/control), @error=1.
Command, Option | Return Value |
---|---|
"IsVisible", "" | Returns 1 if Control is visible, 0 otherwise |
"IsEnabled", "" | Returns 1 if Control is enabled, 0 otherwise |
"ShowDropDown", "" | Displays the ComboBox dropdown |
"HideDropDown", "" | Hides the ComboBox dropdown |
"AddString", 'string' | Adds a string to the end in a ListBox or ComboBox |
"DelString", occurrence | Deletes a string according to occurrence in a ListBox or ComboBox |
"FindString", 'string' | Returns occurrence ref of the exact string in a ListBox or ComboBox |
"SetCurrentSelection", occurrence | Sets selection to occurrence ref in a ListBox or ComboBox |
"SelectString", 'string' | Sets selection according to string in a ListBox or ComboBox |
"IsChecked", "" | Returns 1 if Button is checked, 0 otherwise |
"Check", "" | Checks radio or check Button |
"UnCheck", "" | Unchecks radio or check Button |
"GetCurrentLine", "" | Returns the line # where the caret is in an Edit |
"GetCurrentCol", "" | Returns the column # where the caret is in an Edit |
"GetCurrentSelection", "" | Returns name of the currently selected item in a ListBox or ComboBox |
"GetLineCount", "" | Returns # of lines in an Edit |
"GetLine", line# | Returns text at line # passed of an Edit |
"GetSelected", "" | Returns selected text of an Edit |
"EditPaste", 'string' | Pastes the 'string' at the Edit's caret position |
"CurrentTab", "" | Returns the current Tab shown of a SysTabControl32 |
"TabRight", "" | Moves to the next tab to the right of a SysTabControl32 |
"TabLeft", "" | Moves to the next tab to the left of a SysTabControl32 |
"SendCommandID", Command ID | Simulates the WM_COMMAND message. Usually used for ToolbarWindow32 controls - use the ToolBar tab of Au3Info to get the Command ID. |
Remarks
Some controls will resist automation unless they are the active window. Use the <a href="WinActivate.htm">WinActivate()</a> function to force the control's window to the top before using <a href="ControlCommand.htm">ControlCommand()</a> on these controls.
Certain commands that work on normal Combo and ListBoxes do not work on "ComboLBox" controls.
Related
ControlClick,ControlDisable,ControlEnable,ControlFocus,ControlGetPos,ControlGetText,ControlHide,ControlMove,ControlSetText,ControlShow,StatusbarGetText,WinActivate,WinMenuSelectItem,WinGetClassList,ControlGetFocus,ControlListView,ControlSend,ControlTreeView,
Example
#include <MsgBoxConstants.au3>
Example()
Func Example()
; Run Notepad
Run("notepad.exe")
; Wait 10 seconds for the Notepad window to appear.
Local $hWnd = WinWait("[CLASS:Notepad]", "", 10)
; Send a command to the edit control of Notepad to find the number of lines. The handle returned by WinWait is used for the "title" parameter of ControlCommand.
Local $iCount = ControlCommand($hWnd, "", "Edit1", "GetLineCount", "")
; Display the number of lines.
MsgBox($MB_SYSTEMMODAL, "", "The number of lines in Notepad are: " & $iCount)
; Close the Notepad window using the handle returned by WinWait.
WinClose($hWnd)
EndFunc ;==>Example