# Function Reference

# ControlCommand

Sends a command to a control.

ControlCommand ( "title", "text", controlID, "command" [, "option"] )

## Parameters

title | The title/hWnd/class of the window to access. See Title special definition.
text | The text of the window to access. See Text special definition.
controlID | The control to interact with. See Controls.
command | The command to send to the control.
option | [optional] Additional parameter required by some commands.

## Return Value

Return 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
"GetCount", "" | Returns number of entries 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 WinActivate() function to force the control's window to the top before using ControlCommand() on these controls.
Certain commands that work on normal Combo and ListBoxes do not work on "ComboLBox" controls.

## Related

ControlClick, ControlDisable, ControlEnable, ControlFocus, ControlGetFocus, ControlGetPos, ControlGetText, ControlHide, ControlListView, ControlMove, ControlSend, ControlSetText, ControlShow, ControlTreeView, StatusbarGetText, WinActivate, WinGetClassList, WinMenuSelectItem

## Example

    #include "Extras\HelpFileInternals.au3"

    #include <MsgBoxConstants.au3>

    Example()

    Func Example()
        ; Run Notepad
        Run("notepad.exe")

        Local $hWnd = WinWaitActive("[CLASS:Notepad]", "")
        Send("line1")

        ; 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, "", ControlGetFocus($hWnd), "GetLineCount", "")

        ; Display the number of lines.
        MsgBox($MB_SYSTEMMODAL, "", "The number of lines in Notepad are: " & $iCount)

        _NotepadForceClose($hWnd)
    EndFunc   ;==>Example