jimtruand
Messages postés18Date d'inscriptionvendredi 15 mars 2002StatutMembreDernière intervention27 octobre 2003
-
19 sept. 2002 à 23:51
bonmau
Messages postés13Date d'inscriptionjeudi 22 août 2002StatutMembreDernière intervention 4 octobre 2004
-
26 sept. 2002 à 08:17
Salut !
Je cherche la fonction equivalente a gotoxy(arg1,arg2) de borlandc++ sous Visualc++ ?
C’est une fonction qui nous permet de placer le curseur ou on veut.
J’ai cherché sur le forum et j’ai trouvé la fonction
void pos(int x, int y) {
printf(« \033[%d;%dH », x, y); }
mais ça m’affiche<-[14 ;7]H pour pos(14,7)et ça ne deplace pas le curseur.
bonmau
Messages postés13Date d'inscriptionjeudi 22 août 2002StatutMembreDernière intervention 4 octobre 2004 20 sept. 2002 à 11:37
Salut!
ça doit marcher,à condition de charger au préalable,dans le config.sys,le fichier ansi.sys que l'on trouve dans windows/command.
Rajouter la ligne:
device=c:\windows\command\ansi.sys
jimtruand
Messages postés18Date d'inscriptionvendredi 15 mars 2002StatutMembreDernière intervention27 octobre 2003 25 sept. 2002 à 17:42
Salut !
J’ai donc rajouté dans le fichier config.sys la ligne device=c:\windows\command\ansi.sys
dans la section [NOCD]
mais j’ai toujours les memes erreurs ex : ça m’affiche<-[5 ;5]H pour b.affiche() fonction dans laquelle on trouve pos(5,5) et ça ne deplace pas le curseur !
jim
PS:
voilà le code :
#include
#include <conio.h>
#include <stdio.h>
class point
{
int x,y;
public:
point(); // constructeur 1
point(int);// constructeur 2
point(int,int);// constructeur 3à
void affiche();
};
void pos(int x, int y)
{
printf("°\033[%d;%dH°",x,y);
}
bonmau
Messages postés13Date d'inscriptionjeudi 22 août 2002StatutMembreDernière intervention 4 octobre 2004 25 sept. 2002 à 23:50
Bonsoir,
Je possède également vc++6 et mon o.s est windows98
J'ai tapé ton code,tout est correct: l'affichage et le déplacement du curseur!
Je n'ai pas compris à quoi correspondait cette section [NOCD]
Je rappelle la procédure:
cliquer sur exécuter,taper sysedit.exe et valider,
une série de fenêtres apparait.Choisir la fenêtre
config.sys et rajouter la ligne de commande:
device=c:\WINDOWS\COMMAND\Ansi.sys
bonmau
Messages postés13Date d'inscriptionjeudi 22 août 2002StatutMembreDernière intervention 4 octobre 2004 26 sept. 2002 à 08:17
Bonjour,
Juste un petit complément à mon dernier message.
Lorsque plusieurs affichages sont demandés(c'est le cas de ton programme),il faut purger la mémoire tampon de cout par la fonction flush().
Ecrire:
void point::affiche()
{pos(x,y);
cout<<"Je suis en:"<<x<<","<<y<<"\n";
cout.flush();}
@+ bonmau