Ändert ein Steuerelement auf verschiedene Weise.
Control, Unterbefehl , Wert, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Wenn leer oder weggelassen, wird das oberste Steuerelement des Zielfensters verwendet. Andernfalls geben Sie die ClassNN oder den Text des Steuerelements an, oder lassen Sie den Parameter leer und geben Sie ahk_id %StrlmntHwnd% im FensterTitel-Parameter an, um mit dem HWND des Steuerelements zu arbeiten. Einzelheiten finden Sie unter Steuerelementidentifikatoren.
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 (wie von Window Spy angezeigt).
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 bzw. 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.
Geben Sie für Unterbefehl Folgendes an:
Markiert ein Kontrollkästchen oder Optionsfeld.
Control, Check ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Außerdem sorgt dieser Unterbefehl dafür, dass das Steuerelement den Tastaturfokus erhält, damit alles wie vorgesehen funktioniert.
Entmarkiert ein Kontrollkästchen oder Optionsfeld.
Control, Uncheck ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Außerdem sorgt dieser Unterbefehl dafür, dass das Steuerelement den Tastaturfokus erhält, damit alles wie vorgesehen funktioniert.
Verbietet die Interaktion mit einem Steuerelement.
Control, Disable ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Erlaubt die Interaktion mit einem Steuerelement.
Control, Enable ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Versteckt ein Steuerelement.
Control, Hide ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Mit dem Disable-Unterbefehl kann zusätzlich der Tastaturkurzbefehl eines Steuerelements (unterstrichene Buchstabe) deaktiviert werden.
Zeigt ein Steuerelement, falls es zuvor versteckt wurde.
Control, Show ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Ändert den Style eines Steuerelements.
Control, Style, N , StrlmntID, 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.
Ändert den erweiterten Style eines Steuerelements.
Control, ExStyle, N , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Details finden Sie beim Style-Unterbefehl.
Öffnet die aufklappbare Liste eines Kombinationsfelds oder einer Dropdownliste.
Control, StrlmntID ,, Steuerelement, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Schließt die aufklappbare Liste eines Kombinationsfelds oder einer Dropdownliste.
Control, HideDropDown ,, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Wechselt um eine oder mehrere Registerkarten nach links in einem Registerkarten-Steuerelement.
Control, TabLeft , Schritte, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Wenn Schritte leer ist oder weggelassen wird, wird standardmäßig 1 verwendet. Um eine Registerkarte stattdessen direkt per Positionsnummer auszuwählen, ersetzen Sie die hervorgehobene 5 im folgenden Beispiel mit einer Zahl, die um 1 kleiner ist als die Positionsnummer der Registerkarte, die Sie auswählen möchten. Also 0 für die erste Registerkarte, 1 für die zweite und so weiter:
SendMessage, 0x1330, 5,, SysTabControl321, FensterTitel ; 0x1330 ist TCM_SETCURFOCUS. Sleep 0 ; Diese und die nächste Zeile sind nur für bestimmten Registerkarten-Steuerelemente notwendig. SendMessage, 0x130C, 5,, SysTabControl321, FensterTitel ; 0x130C ist TCM_SETCURSEL.
Wechselt um eine oder mehrere Registerkarten nach rechts in einem Registerkarten-Steuerelement.
Control, TabRight , Schritte, StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Details finden Sie beim TabLeft-Unterbefehl.
Fügt einen neuen Eintrag in einem Listenfeld, Kombinationsfeld oder einer Dropdownliste hinzu.
Control, Add, Zeichenkette , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Löscht per Positionsnummer einen Eintrag aus einem Listenfeld, Kombinationsfeld oder einer Dropdownliste.
Control, Delete, N , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Geben Sie für N die Positionsnummer an. Der erste Eintrag ist 1, der zweite 2 und so weiter.
Selektiert per Positionsnummer einen Eintrag in einem Listenfeld, Kombinationsfeld oder einer Dropdownliste.
Control, Choose, N , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Geben Sie für N die Positionsnummer an. Der erste Eintrag ist 1, der zweite 2 und so weiter. Um alle Einträge in einem Mehrfachauswahl-Listenfeld aus- oder abzuwählen, gehen Sie wie folgt vor:
PostMessage, 0x0185, 1, -1, ListBox1, FensterTitel ; Wählt alle Listenfeldeinträge aus. 0x0185 ist LB_SETSEL.
Selektiert per Zeichenkette einen Eintrag in einem Listenfeld, Kombinationsfeld oder einer Dropdownliste.
Control, ChooseString, Zeichenkette , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Die Suche endet beim ersten Eintrag, dessen Text mit der angegebenen Zeichenkette beginnt. Mit anderen Worten, wenn Zeichenkette mit mehreren Einträgen übereinstimmt, wird der erste ausgewählt.
Die Suche erfolgt nicht Groß-/Kleinschreibung-sensitiv. Wenn z.B. ein Listenfeld den Eintrag "UNIX-Text" enthält, genügt die Angabe des Wortes unix (kleingeschrieben), um diesen Eintrag auszuwählen.
Fügt eine Zeichenkette bei der Einfügemarke in einem Eingabefeld ein.
Control, EditPaste, Zeichenkette , StrlmntID, FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
Dies hat keinen Einfluss auf den Inhalt der Zwischenablage.
[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.
Dieser Befehl ist für die Verwendung mit Steuerelementen in einem Nicht-GUI-Fenster vorgesehen, also einem Fenster, das nicht mit dem Gui-Befehl erstellt wurde. Er funktioniert am besten mit den gängigen oder vordefinierten Steuerelementen von Microsoft. Einige Anwendungen verwenden jedoch benutzerdefinierte oder modifizierte Steuerelemente – in diesem Fall funktioniert der Befehl möglicherweise nicht wie erwartet. Für GUI-Steuerelemente ist es in der Regel sinnvoller, GuiControl zu verwenden, sofern es ein entsprechendes Gegenstück gibt.
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 oder das HWND des Steuerelements unter dem Mauszeiger abgerufen werden.
SetControlDelay, ControlGet, GuiControl, ControlGetText, ControlSetText, ControlMove, ControlGetPos, ControlClick, ControlFocus, ControlSend, WinSet