Effacer l'ecran d'un programme dos
Myv
-
khaled -
khaled -
Bonjour à tous,
Débutant en C++, j'ai un petit problême:
Après avoir écrit un long texte dans une fenêtre Dos, j'aimerais effacer l'écran afin d'écrire une nouvelle page.
J'ai essayé avec la séquence d'échappement:
printf("\033[2J");
mais ça ne fonctionne pas car ça écrit le symbole de ECHAP, (c'est à dire une flèche) puis [2J.
clrscr();
ne semble pas fonctionner car il se produit une erreur à la compilation/linker.
ce que j'aimerais faire, c'est qu'une nouvelle page s'affiche et que le curseur revienne tout en haut à droite de la fenêtre...
Le programme tourne sous windows à l'aide de la commande dos et j'utilise visual c++.
Peut-être pourriez vous aider un humble débutant, merçi d'avance :)
Débutant en C++, j'ai un petit problême:
Après avoir écrit un long texte dans une fenêtre Dos, j'aimerais effacer l'écran afin d'écrire une nouvelle page.
J'ai essayé avec la séquence d'échappement:
printf("\033[2J");
mais ça ne fonctionne pas car ça écrit le symbole de ECHAP, (c'est à dire une flèche) puis [2J.
clrscr();
ne semble pas fonctionner car il se produit une erreur à la compilation/linker.
ce que j'aimerais faire, c'est qu'une nouvelle page s'affiche et que le curseur revienne tout en haut à droite de la fenêtre...
Le programme tourne sous windows à l'aide de la commande dos et j'utilise visual c++.
Peut-être pourriez vous aider un humble débutant, merçi d'avance :)
A voir également:
- Effacer l'ecran d'un programme dos
- Double ecran - Guide
- Programme demarrage windows - Guide
- Capture d'écran whatsapp - Accueil - Messagerie instantanée
- Retourner ecran pc - Guide
- Comment effacer un iphone - Guide
7 réponses
On m'a donné la solution, c'était une instruction que je ne connaissais pas encore:
system("cls");
Pour clrscr(); ça ne fonctionne pas avec visual c++ même en incluant <conio.h>.
Donc, j'ai réussi à m'en sortir merçi à tous pour votre aide :)
system("cls");
Pour clrscr(); ça ne fonctionne pas avec visual c++ même en incluant <conio.h>.
Donc, j'ai réussi à m'en sortir merçi à tous pour votre aide :)
Il faut qu'un pilote ansi.sys soit chargé dans le config.sys:
une ligne du genre
devicehigh=d:\windows\command\ansi.sys
pour que la séquence ESC[2J efface l'écran.
Pour autant que tu disposes d'un pilote ansi.
Si Win$ n'en propose pas il doit y en avoir sur Simtel DOS.
Johan
une ligne du genre
devicehigh=d:\windows\command\ansi.sys
pour que la séquence ESC[2J efface l'écran.
Pour autant que tu disposes d'un pilote ansi.
Si Win$ n'en propose pas il doit y en avoir sur Simtel DOS.
Johan
J'avais dejà testé ta solution, mais ça ne fonctionne pas...bizarre...
La fenêtre DOS ne s'efface pas, il y a juste écrit le texte puis : <-[2J. Je dois dire que la raison m'echappe...
Merçi quand même. :)
La solution que j'ai choisi est donc de faire une boucle de saut de ligne afin de faire remonter les lignes de textes et rafraichir l'ecran. Ce n'est pas élégant mais bon en attendant mieux ;).
La fenêtre DOS ne s'efface pas, il y a juste écrit le texte puis : <-[2J. Je dois dire que la raison m'echappe...
Merçi quand même. :)
La solution que j'ai choisi est donc de faire une boucle de saut de ligne afin de faire remonter les lignes de textes et rafraichir l'ecran. Ce n'est pas élégant mais bon en attendant mieux ;).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question