ControlMove

Verschiebt ein Steuerelement oder ändert dessen Größe.

ControlMove, Steuerelement, X, Y, Breite, Höhe , FensterTitel, FensterText, IgnoriereTitel, IgnoriereText

Parameter

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.

X, Y

Die X- und Y-Koordinate (in Pixel) der oberen linken Ecke der neuen Position des Steuerelements, die Ausdrücke sein können. Wenn eine der Koordinaten leer ist, wird die Position des Steuerelements in Bezug auf diese Koordinate nicht verändert. Die Koordinaten sind relativ zur oberen linken Ecke des Fensters, das dem Steuerelement übergeordnet ist; ControlGetPos oder das interne Tool Window Spy kann genutzt werden, um diese Koordinaten zu ermitteln.

Breite, Höhe

Die neue Breite und Höhe des Steuerelements (in Pixel), die Ausdrücke sein können. Wenn eine der Abmessungen weggelassen wird oder leer ist, wird die Größe des Steuerelements in Bezug auf diese Abmessung nicht verändert.

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.

IgnoriereTitel

Alle Fenster, die diesen Wert in ihren Titeln enthalten, werden ignoriert.

IgnoriereText

Alle Fenster, die diesen Wert in ihren Textelementen enthalten, werden ignoriert.

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. Diese Verzögerung kann via SetControlDelay geändert werden.

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

ControlGetPos, WinMove, SetControlDelay, Control, ControlGet, ControlGetText, ControlSetText, ControlClick, ControlFocus, ControlSend

Beispiele

Demonstriert, wie man die OK-Schaltfläche eines Eingabefensters manipuliert, während das Skript auf eine Benutzereingabe wartet.

SetTimer, ControlMoveTimer
InputBox, AusgabeVar, Mein Eingabefenster
return

ControlMoveTimer:
if not WinExist("Mein Eingabefenster")
    return
; Ansonsten gilt das "zuletzt gefundene" Fenster von oben:
SetTimer, ControlMoveTimer, Off
WinActivate
ControlMove, OK, 10, , 200  ; Verschiebt die OK-Schaltfläche nach links und macht sie breiter.
return