Référence Mot-clé


While...WEnd

Exécute une boucle TANT QUE la condition spécifiée est vraie.

While <condition>
    instructions
    ...
WEnd

Paramètre

condition Si la condition est vraie, les instructions qui suivent jusqu'à WEnd seront exécutées. Cette boucle continuera jusqu'à ce que la condition devienne fausse.

Remarques

Les instructions While...WEnd peuvent être imbriquées.
L'expression est testée avant l'exécution de la boucle donc la boucle peut être exécutée zéro ou plusieurs fois.

Les techniques de programmation moderne excluent l'utilisation de While 1/Wend qui n'apporte rien de plus qu'un Lbl/Goto. Pour des raisons de lisibilité et de fiabilité du code, il est fortement conseillé d'utiliser après While la condition qui arrête la boucle et de ne pas tromper le lecteur avec des instructions ExitLoop.

En relation

ContinueLoop, ExitLoop

Exemples

Exemple 1

#include <MsgBoxConstants.au3>

Local $i = 0
While $i <= 10
    MsgBox($MB_SYSTEMMODAL, "", "Value of $i is: " & $i)
    $i = $i + 1
Wend


Exemple 2

; Définit la touche Echap pour arrêter le script.
HotKeySet("{ESC}", "_Terminate")
; La fonction _Terminate mettra à True le booléen suivant:
Global $bStop = False

Example()

Func Example()
    ; Initialise une variable locale.
    Local $aMgp = 0

    ; Crée une boucle qui s'arrête quand l'utilisateur appuie sur Esc
    While Not $bStop
        ; Affecte à une variable locale les coordonnées du curseur (tableau).
        $aMgp = MouseGetPos()

        ; Affiche une info-bulle à côté du curseur avec ses coords.
        ToolTip("x: " & $aMgp[0] & ", y: " & $aMgp[1], $aMgp[0] + 10, $aMgp[1] + 10)

        ; Évite une utilisation élevée du processeur.
        Sleep(50)
    Wend
EndFunc   ;==>Example

Func _Terminate()
    $bStop = True
EndFunc   ;==>_Terminate