SetWinDelay

Bestimmt eine Verzögerung, die nach jeder fensterspezifischen Funktion wie WinActivate eintritt.

SetWinDelay 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 SetWinDelay nicht verwendet wird, ist die Verzögerung standardmäßig 100.

Nach jeder fensterspezifischen Funktion außer WinActive und WinExist erfolgt automatisch eine kurze Verzögerung (Sleep). Diese Verzögerung ist notwendig, um die Zuverlässigkeit von Skripten zu verbessern, da ein Fenster manchmal eine Ruhephase benötigt, nachdem es erstellt, aktiviert, minimiert usw. 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 Fenster 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_WinDelay 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 der Funktion. Diese Standardeinstellung kann geändert werden, indem die Funktion während der Startphase des Skripts verwendet wird.

SetControlDelay, SetKeyDelay, SetMouseDelay, SendMode

Beispiele

Veranlasst nach jeder fensterspezifischen Funktion eine Verzögerung von 10 ms.

SetWinDelay 10