Control

Führt eine Vielzahl von Änderungen an einem Steuerelement durch.

Control, Unterbefehl , Wert, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Parameter

Unterbefehl, Wert
Diese Parameter sind voneinander abhängig und können wie unten gezeigt genutzt werden.
Steuerelement

Kann entweder die ClassNN-Bezeichnung (Klassenname und Instanznummer des Steuerelements) oder der Text des Steuerelements sein, die beide mit dem internen Tool Window Spy ermittelt werden können. Verwendet man Text, ist das Übereinstimmungsverhalten abhängig von SetTitleMatchMode. Wenn dieser Parameter leer ist, wird das oberste Steuerelement des Zielfensters benutzt.

Um ein Steuerelement via HWND-Nummer (eindeutige ID) anzusteuern, muss der Steuerelement-Parameter leer gelassen und ahk_id %SteuerelementHwnd% als Fenstertitel-Parameter übergeben werden (funktioniert auch bei versteckten Steuerelementen, selbst wenn DetectHiddenWindows ausgeschaltet ist). Die HWND-Nummer eines Steuerelements kann üblicherweise via ControlGet Hwnd, MouseGetPos oder DllCall() abgerufen werden.

Fenstertitel
Der Titel oder andere Möglichkeiten zum Identifizieren des Zielfensters. Weitere Informationen finden Sie unter Fenstertitel-Parameter.
Fenstertext
Eine Zeichenkette, die in einem der Textelemente des Zielfensters enthalten ist (eventuell vorhandene Textelemente können mit dem internen Tool Window Spy aufgedeckt werden). Versteckte Textelemente werden nur erkannt, wenn DetectHiddenText eingeschaltet ist.
Titelausnahme
Alle Fenster, die diesen Wert in ihren Titeln enthalten, werden ignoriert.
Textausnahme
Alle Fenster, die diesen Wert in ihren Textelementen enthalten, werden ignoriert.

Unterbefehle

Geben Sie für Unterbefehl Folgendes an:

Check

Versetzt eine CheckBox oder einen Radio-Button in den abgehakten bzw. eingeschalteten Zustand.

Control, Check ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Um die korrekte Funktionalität zu gewährleisten, setzt diese Funktion zudem den Eingabefokus auf das Steuerelement.

Uncheck

Versetzt eine CheckBox oder einen Radio-Button in den nicht-abgehakten bzw. ausgeschalteten Zustand.

Control, Uncheck ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Um die korrekte Funktionalität zu gewährleisten, setzt diese Funktion zudem den Eingabefokus auf das Steuerelement.

Enable

Aktiviert die zuvor deaktivierte Interaktion mit einem Steuerelement.

Control, Enable ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Disable

Deaktiviert die Interaktion mit einem Steuerelement.

Control, Disable ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Show

Macht ein zuvor verstecktes Steuerelement wieder sichtbar.

Control, Show ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Hide

Versteckt ein Steuerelement.

Control, Hide ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Mit dem Disable-Unterbefehl kann zusätzlich das Tastenkürzel eines Steuerelements (unterstrichene Buchstabe) deaktiviert werden.

Style

Ändert den Style eines Steuerelements.

Control, Style, N , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Wenn das erste Zeichen von N ein Plus- oder Minuszeichen ist, werden die in N angegebenen Styles hinzugefügt bzw. entfernt. Wenn das erste Zeichen ein Zirkumflex (^) ist, werden die in N angegebenen Styles auf den entgegengesetzten Zustand geschaltet. Wenn das erste Zeichen eine Ziffer ist, wird der Style des Steuerelements komplett überschrieben; das heißt, das der Style zu N wird. ErrorLevel wird auf 1 gesetzt, wenn das angegebene Fenster/Steuerelement nicht gefunden wird oder wenn der Style nicht angewendet werden darf.

Die Änderungen einiger Styles werden erst wirksam, wenn das komplette Fenster via WinSet Redraw neu gezeichnet wurde. Die Style-Tabelle listet einige Style-Nummern auf. Zum Beispiel:

Control, Style, ^0x800000, Edit1, Fenstertitel  ; Schaltet den WS_BORDER-Style auf den entgegengesetzten Zustand.

ExStyle

Ändert den erweiterten Style eines Steuerelements.

Control, ExStyle, N , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Schauen Sie sich den Style-Unterbefehl oben an, um mehr zu erfahren.

ShowDropDown

Macht die Auswahlliste einer ComboBox sichtbar.

Control, ShowDropDown ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

HideDropDown

Versteckt die Auswahlliste einer ComboBox.

Control, HideDropDown ,, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

TabLeft

Verschiebt die Tabauswahl in einem SysTabControl32 um einen oder mehrere Tabs nach links.

Control, TabLeft , Schritte, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Wenn Schritte weggelassen wird oder leer ist, wird standardmäßig 1 verwendet. Um einen Tab stattdessen direkt via Nummer auszuwählen, ersetzen Sie die hervorgehobene 5 im folgenden Beispiel mit einer Nummer, die um 1 kleiner ist als die Nummer des Tabs, den Sie auswählen möchten. Also 0 für den ersten Tab, 1 für den Zweiten und so weiter:

SendMessage, 0x1330, 5,, SysTabControl321, Fenstertitel  ; 0x1330 ist TCM_SETCURFOCUS.
Sleep 0  ; Diese und die nächste Zeile sind nur für bestimmte Tab-Steuerelemente notwendig.
SendMessage, 0x130C, 5,, SysTabControl321, Fenstertitel  ; 0x130C ist TCM_SETCURSEL.

TabRight

Verschiebt die Tabauswahl in einem SysTabControl32 um einen oder mehrere Tabs nach rechts.

Control, TabRight , Schritte, Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Schauen Sie sich den TabLeft-Unterbefehl oben an, um mehr zu erfahren.

Add

Fügt Zeichenkette als neuen Listeneintrag an das untere Ende einer ListBox, ComboBox oder eventuell eines anderen Steuerelements hinzu.

Control, Add, Zeichenkette , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Delete

Entfernt den N-ten Listeneintrag aus einer ListBox oder ComboBox.

Control, Delete, N , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Geben Sie für N die Positionsnummer eines Listeneintrags an; also 1 für den ersten Listeneintrag, 2 für den Zweiten, und so weiter.

Choose

Wählt den N-ten Listeneintrag in einer ListBox oder ComboBox aus.

Control, Choose, N , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Geben Sie für N die Positionsnummer eines Listeneintrags an; also 1 für den ersten Listeneintrag, 2 für den Zweiten, und so weiter. Das folgende Beispiel zeigt, wie alle Listeneinträge in einer Mehrfachauswahl-ListBox aus- oder abgewählt werden können:

PostMessage, 0x185, 1, -1, ListBox1, Fenstertitel  ; Wählt alle ListBox-Einträge aus. 0x185 ist LB_SETSEL.

ChooseString

Wählt in einer ListBox oder ComboBox einen Listeneintrag aus, dessen Name mit Zeichenkette beginnt.

Control, ChooseString, Zeichenkette , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Die Suche ist nicht Groß-/Kleinschreibung-sensitiv. Wenn eine ListBox/ComboBox beispielsweise den Listeneintrag "UNIX-Text" enthält, genügt die Angabe des Wortes unix (kleingeschrieben), um diesen Listeneintrag auszuwählen.

EditPaste

Fügt Zeichenkette an den Textcursor eines Edit-Steuerelements ein.

Control, EditPaste, Zeichenkette , Steuerelement, Fenstertitel, Fenstertext, Titelausnahme, Textausnahme

Dies hat keinen Einfluss auf den Inhalt der Zwischenablage.

Fehlerbehandlung

[v1.1.04+]: Dieser Befehl ist in der Lage, bei Misserfolg eine Ausnahme auszulösen. Weitere Informationen finden Sie unter Laufzeitfehler.

ErrorLevel wird bei Misserfolg auf 1 und bei Erfolg auf 0 gesetzt.

Bemerkungen

Um die Zuverlässigkeit des Befehls zu verbessern, erfolgt jedes Mal, wenn er ausgeführt wurde, automatisch eine Verzögerung (außer bei den Unterbefehlen Style und ExStyle). Diese Verzögerung kann via SetControlDelay geändert werden.

MouseGetPos kann genutzt werden, um die ClassNN-Bezeichnung oder die HWND-Nummer (eindeutige ID) des Steuerelements unterhalb des Mauszeigers abzurufen.

Fenstertitel und -texte sind Groß-/Kleinschreibung-sensitiv. Versteckte Fenster werden nur erkannt, wenn DetectHiddenWindows eingeschaltet ist.

Siehe auch

SetControlDelay, ControlGet, GuiControl, ControlGetText, ControlSetText, ControlMove, ControlGetPos, ControlClick, ControlFocus, ControlSend, WinSet

Beispiele

#1: Versteckt die Auswahlliste der ersten ComboBox:

Control, HideDropDown,, ComboBox1, Beliebiger Fenstertitel