SetWinDelay

Setzt eine Verzögerung, die nach jedem fenster-spezifischen Befehl wie WinActivate erfolgen soll.

SetWinDelay, Verzögerung

Parameter

Verzögerung

Zeit in Millisekunden (kann ein Ausdruck sein). Verwenden Sie -1, um die Verzögerung vollständig zu deaktivieren, oder 0, um die kleinstmögliche Verzögerung zu veranlassen. Wenn dieser Parameter nicht gesetzt ist, wird standardmäßig eine Verzögerung von 100 verwendet.

Bemerkungen

Nach jedem fensterspezifischen Befehl, außer WinActive() / IfWinActive und WinExist() / IfWinExist, erfolgt automatisch eine kurze Verzögerung (Ruhephase). Diese Verzögerung ist notwendig, um die Zuverlässigkeit der Skripte zu verbessern, weil einige Fenster eine Ruhephase benötigen, nachdem sie erstellt, aktiviert, minimiert usw. wurden. So haben sie eine Chance, sich selbst zu aktualisieren und auf dem nächsten Befehl reagieren zu können, den das Skript an dieses Fenster senden will.

Zwar ist eine Verzögerung von -1 erlaubt (überhaupt keine Verzögerung), allerdings wird empfohlen, mindestens 0 zu verwenden, um ein reibungsloses Ausführen des Skripts auch unter starker CPU-Belastung zu ermöglichen.

Eine Verzögerung von 0 führt intern ein Sleep(0) aus - diese Funktion übergibt den Restwert des Skript-Zeitintervalls an andere Prozesse, die diesen Wert benötigen. Wenn es solche Prozesse nicht gibt, wird Sleep(0) überhaupt keine Verzögerung durchführen.

Wenn die CPU langsam oder ausgelastet ist, oder die Fensteranimation aktiviert ist, könnten höhere Verzögerungswerte notwendig sein.

Die interne Variable A_WinDelay enthält die aktuelle Einstellung.

Jeder neu gestartete Thread (z. B. ein Hotkey, ein benutzerdefinierter Menüpunkt oder eine zeitgesteuerte Subroutine) verwendet zu Beginn die Standardeinstellung des Befehls. Um diese zu ändern, muss der Befehl im automatischen Ausführungsbereich (ganz oben im Skript) angegeben werden.

Siehe auch

SetControlDelay, SetKeyDelay, SetMouseDelay, SetBatchLines, SendMode

Beispiele

#1

SetWinDelay, 10