Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/11/2008, à 15:45

rniamo

c/C++ raffraichir plus d'un ligne en console

bonjour,

comment en console raffraichir plus d'une ligne à la fois (sans faire une boucle de \n) ?

pour une ligne je connais \r mais pour plusieurs je n'ai pas d'idées.


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#2 Le 13/11/2008, à 16:49

Jos31

Re : c/C++ raffraichir plus d'un ligne en console

Salut,

Il suffit que tu utilise les codes suivants:

int x = 1;
int y = 1;
printf("\e[%d;%dH", x, y);

Ca te permettra de te déplacer ou tu veux dans la console, en remplacant x et y par les valeurs que tu souhaite

Edit: tu trouvera d'autres possibilités ici: http://www.jms1.net/code/title.shtml

Dernière modification par Jos31 (Le 13/11/2008, à 16:50)

Hors ligne

#3 Le 13/11/2008, à 17:45

tiky

Re : c/C++ raffraichir plus d'un ligne en console

Si tu veux créer des interfaces vraiment complexes dans un terminal, je te conseille d'utiliser ncurse.


Conseil d'expert: il vous faut un dentifrice adapté...

Hors ligne

#4 Le 13/11/2008, à 20:09

rniamo

Re : c/C++ raffraichir plus d'un ligne en console

c'est pas complexe, c'est juste pour afficher une carte et la raffrachir de temps en temps. JE regarde.


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#5 Le 13/11/2008, à 20:30

rniamo

Re : c/C++ raffraichir plus d'un ligne en console

j'ai un soucis avec : \e (je fais std::cout << "\e...";)

erreur: non-ISO-standard escape sequence,


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#6 Le 13/11/2008, à 21:04

Jos31

Re : c/C++ raffraichir plus d'un ligne en console

rniamo a écrit :

j'ai un soucis avec : \e (je fais std::cout << "\e...";)

erreur: non-ISO-standard escape sequence,

Essaye en utilisant \x1b au lieu de \e smile

Dernière modification par Jos31 (Le 13/11/2008, à 21:08)

Hors ligne

#7 Le 13/11/2008, à 21:06

rniamo

Re : c/C++ raffraichir plus d'un ligne en console

ça m'affiche le texte dans la console


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#8 Le 13/11/2008, à 21:10

Jos31

Re : c/C++ raffraichir plus d'un ligne en console

J'ai édité trop tard, c'est \x1B et non pas \x0B
Pour les valeurs de x et y, ca commence a 1 (ex \x1B[1;1H c'est en haut a gauche

Hors ligne

#9 Le 13/11/2008, à 21:14

rniamo

Re : c/C++ raffraichir plus d'un ligne en console

ça marche, merci...cependant l'affichage n'est pas trés propre, system("clear") est plus "beau"...enfin ça me va temporairement, s'il y a une solution portable je prends.


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#10 Le 13/11/2008, à 21:55

nicolas.sitbon

Re : c/C++ raffraichir plus d'un ligne en console

tiky a écrit :

Si tu veux créer des interfaces vraiment complexes dans un terminal, je te conseille d'utiliser ncurse.

ncurses est dépassé, pdcurses est full POSIX compliant et portables même sur Windows.

Hors ligne

#11 Le 13/11/2008, à 22:06

rniamo

Re : c/C++ raffraichir plus d'un ligne en console

ok je regarde (même si ça me semble prendre un marteau pour écranse une mouche ...

j'utilise mantenant :

std::cout << "\033[H\033[2J";

< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne