SetControlDelay

Bestimmt die Verzögerung, die nach jedem steuerelement­modifizierenden Befehl eintritt.

SetControlDelay, Verzögerung

Parameter

Verzögerung

Zeit in Millisekunden. Kann ein Ausdruck sein. Geben Sie -1 an, um die Verzögerung vollständig zu deaktivieren, oder 0, um die kleinstmögliche Verzögerung zu veranlassen.

Bemerkungen

Wenn SetControlDelay nicht verwendet wird, ist die Verzögerung standardmäßig 20.

Nach jedem Control-Befehl, der ein Steuerelement ändert, namentlich Control, ControlMove, ControlClick, ControlFocus und ControlSetText, erfolgt automatisch eine kurze Verzögerung (ControlSend verwendet SetKeyDelay). Diese Verzögerung ist notwendig, um die Zuverlässigkeit von Skripten zu verbessern, da ein Steuerelement manchmal eine Ruhephase benötigt, nachdem es durch einen dieser Befehle verändert wurde, so dass es die Chance hat, sich selbst zu aktualisieren und auf den nächsten Befehl zu reagieren, den das Skript möglicherweise versucht, an das Steuerelement zu senden.

Obwohl eine Verzögerung von -1 (überhaupt keine Verzögerung) zulässig ist, wird empfohlen, mindestens 0 zu verwenden, um eine reibungslose Skriptausführung auch bei hoher CPU-Auslastung zu ermöglichen.

Eine Verzögerung von 0 führt intern Sleep(0) aus, das die restliche Zeitscheibe des Skripts an jeden anderen Prozess weitergibt, der sie benötigen könnte. Wenn es keine gibt, erzeugt Sleep(0) überhaupt kein Sleep.

Wenn die CPU langsam oder ausgelastet ist oder wenn die Fensteranimation aktiviert ist, können höhere Verzögerungswerte erforderlich sein.

Die interne Variable A_ControlDelay enthält die aktuelle Einstellung.

Jeder neue Thread (z.B. ein Hotkey, ein benutzerdefinierter Menüpunkt oder eine zeitgesteuerte Subroutine) verwendet zunächst die Standardeinstellung des Befehls. Diese Standardeinstellung kann geändert werden, indem der Befehl im automatischen Ausführungsbereich (ganz oben im Skript) verwendet wird.

Control, ControlMove, ControlClick, ControlFocus, ControlSetText, SetWinDelay, SetKeyDelay, SetMouseDelay, SetBatchLines

Beispiele

Veranlasst nach jedem steuerelement­modifizierenden Befehl die kleinstmögliche Verzögerung.

SetControlDelay, 0