SetControlDelay

Bestimmt die Verzögerung, die nach jeder steuerelement­modifizierenden Funktion eintritt.

SetControlDelay Verzögerung

Parameter

Verzögerung

Typ: Integer

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

Rückgabewert

Typ: Integer

Diese Funktion gibt die vorherige Einstellung zurück.

Bemerkungen

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

Nach jeder Control-Funktion, die ein Steuerelement ändert, erfolgt automatisch eine kurze Verzögerung (Sleep). Diese Verzögerung ist notwendig, um die Zuverlässigkeit von Skripten zu verbessern, da ein Steuerelement manchmal eine Ruhephase benötigt, nachdem es durch eine dieser Funktionen verändert wurde, so dass es die Chance hat, sich selbst zu aktualisieren und auf die nächste Funktion zu reagieren, die das Skript möglicherweise versucht, an das Steuerelement zu senden.

SetControlDelay beeinflusst die folgenden Funktionen: ControlAddItem, ControlChooseIndex, ControlChooseString, ControlClick, ControlDeleteItem, EditPaste, ControlFindItem, ControlFocus, ControlHide, ControlHideDropDown, ControlMove, ControlSetChecked, ControlSetEnabled, ControlSetText, ControlShow, ControlShowDropDown.

ControlSend ist nicht betroffen; hierbei hilft SetKeyDelay.

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 und kann auf einen neuen Wert gesetzt werden, anstatt SetControlDelay aufzurufen.

Jeder neue Thread (z.B. ein Hotkey, ein benutzerdefinierter Menüpunkt oder eine zeitgesteuerte Subroutine) verwendet zunächst die Standardeinstellung der Funktion. Diese Standardeinstellung kann geändert werden, indem die Funktion während der Startphase des Skripts verwendet wird.

Control-Funktionen, SetWinDelay, SetKeyDelay, SetMouseDelay

Beispiele

Veranlasst nach jeder steuerelement­modifizierenden Funktion die kleinstmögliche Verzögerung.

SetControlDelay 0