Control

Ändert ein Steuerelement auf verschiedene Weise.

Control, Unterbefehl , Wert, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Parameter

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

Wenn leer oder weggelassen, wird das oberste Steuerelement des Zielfensters verwendet. Andernfalls geben Sie entweder die ClassNN-Bezeichnung (Klassenname und Instanznummer des Steuerelements) oder den Text des Steuerelements an, die beide mit dem internen Tool "Window Spy" ermittelt werden können. Wenn Text verwendet wird, ist das Übereinstimmungsverhalten abhängig von SetTitleMatchMode.

Um mit dem Fensterhandle (HWND) eines Steuerelements zu arbeiten, lassen Sie den Steuerelement-Parameter leer und übergeben Sie ahk_id %StrlmntHwnd% als FensterTitel-Parameter (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, FensterText, AusnahmeTitel, AusnahmeText

Wenn jeder dieser Parameter leer ist oder weggelassen wird, wird das Zuletzt Gefundene Fenster verwendet. Andernfalls geben Sie für FensterTitel einen Fenstertitel oder andere Kriterien zur Identifizierung des Zielfensters und/oder für FensterText eine Teilzeichenkette aus einem Textelement des Zielfensters an (Textelemente können mit dem internen Tool "Window Spy" in Erfahrung gebracht werden).

AusnahmeTitel und AusnahmeText können verwendet werden, um ein oder mehrere Fenster anhand ihres Titels oder Textes auszuschließen. Ihre Angabe ähnelt der von FensterTitel und FensterText, außer dass AusnahmeTitel keine anderen Kriterien als den Fenstertitel erkennt.

Fenstertitel und -texte sind Groß-/Kleinschreibung-sensitiv. Standardmäßig werden versteckte Fenster nicht erkannt und versteckte Textelemente erkannt, was mit DetectHiddenWindows und DetectHiddenText geändert werden kann. Standardmäßig muss ein Fenstertitel mit dem angegebenen FensterTitel oder AusnahmeTitel beginnen, um eine Übereinstimmung zu sein, was mit SetTitleMatchMode geändert werden kann.

Unterbefehle

Geben Sie für Unterbefehl Folgendes an:

Check

Schaltet ein CheckBox- oder Radio-Steuerelement ein.

Control, Check ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Damit dieser Unterbefehl korrekt funktioniert, wird das Steuerelement außerdem fokussiert.

Uncheck

Schaltet ein CheckBox- oder Radio-Steuerelement aus.

Control, Uncheck ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Damit dieser Unterbefehl korrekt funktioniert, wird das Steuerelement außerdem fokussiert.

Enable

Erlaubt die Interaktion mit einem Steuerelement.

Control, Enable ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Disable

Verbietet die Interaktion mit einem Steuerelement.

Control, Disable ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Show

Macht ein zuvor verstecktes Steuerelement wieder sichtbar.

Control, Show ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Hide

Versteckt ein Steuerelement.

Control, Hide ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Mit dem Disable-Unterbefehl kann zusätzlich der Tastaturkurzbefehl eines Steuerelements (unterstrichene Buchstabe) deaktiviert werden.

Style

Ändert den Style eines Steuerelements.

Control, Style, N , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

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

Bestimmte Style-Änderungen werden erst wirksam, wenn das gesamte Fenster via WinSet Redraw neu gezeichnet wird. Einige Styles finden Sie unter Fenster- und Steuerelement-Styles. 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, AusnahmeTitel, AusnahmeText

Details finden Sie beim Style-Unterbefehl oben.

ShowDropDown

Macht die Auswahlliste einer ComboBox sichtbar.

Control, ShowDropDown ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

HideDropDown

Versteckt die Auswahlliste einer ComboBox.

Control, HideDropDown ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

TabLeft

Navigiert um ein oder mehr Tabs nach links in einem SysTabControl32.

Control, TabLeft , Schritte, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Wenn Schritte leer ist oder weggelassen wird, 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

Navigiert um ein oder mehr Tabs nach rechts in einem SysTabControl32.

Control, TabRight , Schritte, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Details finden Sie beim TabLeft-Unterbefehl oben.

Add

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

Control, Add, Zeichenkette , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Delete

Löscht den N-ten Listeneintrag aus einer ListBox oder ComboBox.

Control, Delete, N , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Geben Sie für N die Positionsnummer eines Listeneintrags an; also 1 für den ersten, 2 für den zweiten usw.

Choose

Setzt die Auswahl in einer ListBox oder ComboBox auf den N-ten Listeneintrag.

Control, Choose, N , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Geben Sie für N die Positionsnummer eines Listeneintrags an; also 1 für den ersten, 2 für den zweiten usw. Um alle Listeneinträge in einer Mehrfachauswahl-ListBox aus- oder abzuwählen, gehen Sie wie folgt vor:

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

ChooseString

Setzt die Auswahl in einer ListBox oder ComboBox auf den ersten Listeneintrag, der mit Zeichenkette beginnt.

Control, ChooseString, Zeichenkette , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

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

EditPaste

Fügt Zeichenkette am Textcursor eines Edit-Steuerelements ein.

Control, EditPaste, Zeichenkette , Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

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 zu erhöhen, erfolgt jedes Mal, nachdem dieser Befehl ausgeführt wurde, automatisch eine Verzögerung (außer bei den Unterbefehlen Style und ExStyle). Diese Verzögerung kann mit SetControlDelay geändert werden.

Mit MouseGetPos kann die ClassNN-Bezeichnung oder HWND-Nummer (eindeutige ID) des Steuerelements unter dem Mauszeiger abgerufen werden.

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

Beispiele

Versteckt die Auswahlliste der ersten ComboBox.

Control, HideDropDown,, ComboBox1, Beliebiger Fenstertitel