Je me suis fais une validation qui affiche un message expliquant l'erreur faite par l'utilisateur. ensuite je veux que le curseur revienne se posté apres la demande qui lui a été faite tout en ayant les message d'erreure.
Par exemple voici l'écran apres qu'un nombre négatif est été entré.
entrez un nombre positif : _
le nombre entré n'est pas postif
réentré le nombre
et non pas que le programe réécrive la demande en dessous a chaque fois que l'utilisateur entre une donné invalide par exemple:
entrez un nombre positif : -5
le nombre entré n'est pas postif
réentré le nombre
entrez un nombre positif : _
Mon programe est en mode console et je travaille avec builder c++ 6.0 .
J'utilise présentement wherey() et wherex() pour avoir les coordonné du curseur immidiatement apres la demande et gotoxy() au début de ma validation pour que le curseur vienne se posté toujours apres la demande.
cela fonctionne parfaitement jusqu'a la ligne 44 si je me souvien bien mais c'est autour de celle la. a ce moment le gotoxy() ne fonctione plus. Je me suis assuré que la fonction wherey() fonctionnais comme il le faut et il n'y a aucun probleme. Mais le gotoxy() lui bloque a cette ligne 44.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 cout<<"entrez un nombre positif : "; Val_X=wherex(); // renvois l'emplacement Val_Y=wherey(); // actuelle du curseur do { Err=False; gotoxy(Val_X,Val_Y); // retourne le curseur au coordoné de départ clreol(); // pour effacé l'ancienne entré de l'utilisateur (erroné) cin>>Num; /* gestion des erreure possible avec cin.fail et chacune des condition que je veux donc dans ce cas Num >= 0 si une des condition n'est pas respecté Err=True */ }while(Err); //recommence s'il y a eu une erreure
En y pensant je ne vois que deux solution:
soit il y a une autre fonction qui fais le meme travaile que gotoxy()
soit il y a une fonction qui me permettrai de remonté d'une ligne ou de recullé de 80 caractere en permettant le changement de ligne.
soit encor s'il est posible d'élargir la porté de gotoxy()
mais je ne conais ni une ni l'autre alors si vous avez une idée pour réglé se probleme, avec les deux moyen que jai pus toruvé ou avec un autre moyen qui existe probablement.
merci a l'avence de vos réponse.
Partager