-
Sujet
-
des fois, quand on fait un programme, on doit demander à l’utilisateur de faire un choix.
il est bien sur possible de faire cela avec set :
set /p choix=Choisissez :
Cependant, il y a une commande qui existe en batch spécialement pour cela: la commande choice
>choice /M "choisissez :" choisissez : [O,N]?N >
On voit que la commande n’accepte que les valeurs O ou N (en majuscule ou minuscule) et produit d’ailleurs un son assez désagréable quand on tape sur une autre touche. Il n’y a même pas besoin d’appuyer sur la touche entrée
Le résultat de la commande est mis dans la variable errorlevel :
> choice /M "choisissez :" choisissez : [O,N]?N >echo %errorlevel% 2 >choice /M "choisissez :" choisissez : [O,N]?O >echo %errorlevel% 1
la commande fait juste correspondre le premier choix avec 1, le deuxième avec 2 etc..
On peut bien entendu choisir les choix (mais ils ne doivent toujours faire qu’une lettre) :
>choice /c ync /M "Yes | No | Cancel :" Yes | No | Cancel : [Y,N,C]?C >echo %errorlevel% 3
Il y a aussi d’autres options comme par exemple n pour empecher d’afficher le petit encadré en [] contenant les choix possibles, CS pour que les choix respectent la casse, /T qui impose un temps limite pour répondre et qui doit être utilisé avec /D pour donner la réponse par défaut lorsque le temps est écoulé.. et quelques autres que vous pourrez découvrir avec :
choice /?
- Vous devez être connecté pour répondre à ce sujet.