Funktionreferenz


ControlCommand

Beschreibung anzeigen in

Sendet einen Befehl an ein Control.

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

Parameter

title Der Titel/hWnd/Klasse des Fensters, auf das zugegriffen werden soll. Siehe Erweiterte Fenstertiteldefinition.
text Der Text des Fensters, auf das zugegriffen werden soll. Siehe Erweiterte Fenstertextdefinition.
ControlID Die ID des Controls, das beeinflusst werden soll. Siehe Controls.
command Der Befehl, der gesendet werden soll.
option [optional] Einige Befehle erfordern zusätzliche Parameter.

Rückgabewert

Ist abhängig vom Befehl wie in der nachfolgenden Tabelle dargestellt. Im Falle eines Fehlers (wie ein ungültiger Befehl oder eine ungültige ID) wird @error=1 gesetzt.

Befehl, Option Rückgabewert
"IsVisible", "" Gibt 1 zurück, wenn das Control sichtbar (visible) ist, ansonsten 0.
"IsEnabled", "" Gibt 1 zurück, wenn das Control freigegeben (enabled) ist, ansonsten 0.
"ShowDropDown", "" Zeigt die Einzelitems einer ComboBox.
"HideDropDown", "" Versteckt die Einzelitems einer ComboBox.
"AddString", 'string' Fügt einen String an das Ende einer ListBox oder einer ComboBox hinzu.
"DelString", occurrence Entfernt einen String entsprechend des Auftretens (occurrence) in einer ListBox oder einer ComboBox.
"FindString", 'string' Gibt die Referenz des Auftretens in einer ListBox oder einer ComboBox gefundenen Strings zurück.
"GetCount", "" Gibt die Anzahl der Einträge in einer ListBox oder einer ComboBox zurück.
"SetCurrentSelection", occurrence Wählt in einer ListBox oder einer ComboBox ein Element, entsprechend der occurence-Referenz aus.
"SelectString", 'string' Wählt in einer ListBox oder einer ComboBox ein Element aus, das dem String 'string' entspricht.
"IsChecked", "" Gibt 1 zurück, wenn die Befehlsfläche ausgewählt ist, ansonsten 0.
"Check", "" Aktiviert einen Radiobutton oder eine Checkbox
"UnCheck", "" Deaktiviert einen Radiobutton oder eine Checkbox.
"GetCurrentLine", "" Gibt die Zeilennummer zurück, in der der Cursor in einem Edit-Control steht.
"GetCurrentCol", "" Gibt die Spaltennummer zurück, in der der Cursor in einem Edit-Control steht.
"GetCurrentSelection", "" Gibt den Namen des augenblicklich gewählten Elements in einer ListBox oder einer ComboBox zurück.
"GetLineCount", "" Gibt die Anzahl der Zeilen eines Edit-Controls zurück.
"GetLine", Zeile# Gibt den Text der angegebenen Zeile eines Edit-Controls zurück.
"GetSelected", "" Gibt den ausgewählten Text eines Edit-Controls zurück.
"EditPaste", 'string' Fügt den String 'string' an der Cursorposition in ein Edit-Control ein.
"CurrentTab", "" Rückgabe des aktuellen Tabs eines SysTabControl32-Control
"TabRight", "" Geht zum nächsten rechten Tab eines SysTabControl32-Controls
"TabLeft", "" Geht zum nächsten linken Tab eines SysTabControl32-Controls
"SendCommandID", Command ID Simuliert die WM_COMMAND Nachricht. Üblicherweise für ToolbarWindow32-Controls genutzt - um die Command-ID zu erhalten, wählt man die Registerkarte "Toolbar" im Au3Info-Tool.

Bemerkungen

Einige Controls sind immun gegen Automatisierung, solange sie nicht zum aktiven Fenster gehören. Es ist die WinActivate() Funktion zu benutzen, um diese Fenster zu aktivieren, bevor die ControlCommand() Funktion auf diese Controls angewendet wird.

Bestimmte Befehle, die mit normalen ListBoxes oder ComboBoxes arbeiten, funktionieren nicht mit dem "ComboLBox" Control.

Verwandte Funktionen

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

Beispiel

#include <MsgBoxConstants.au3>

Example()

Func Example()
    ; Startet den Editor
    Run("notepad.exe")

    ; Wartet maximal 10 Sekunden bis das Editorfenster erscheint.
    Local $hWnd = WinWait("[CLASS:Notepad]", "", 10)

    ; Sendet einen Befehl an das Edit-Control des Editors um die Anzahl der Zeilen zuu ermitteln. Dabei wird für den "title" Parameter von ControlCommand das von WinWait zurückgegebenen Handle verwendet.
    Local $iCount = ControlCommand($hWnd, "", "Edit1", "GetLineCount", "")

    ; Zeigt die Anzahl von Zeilen
    MsgBox($MB_SYSTEMMODAL, "", "Die Anzahl von Zeilen im Editor sind: " & $iCount)

    ; Schließt das Editorfenster durch die Verwendung des von WinWait zurückgegebenen Handles.
    WinClose($hWnd)
EndFunc   ;==>Example