Bonsoir à tous,
je suis débutant et je voudrais savoir si quelqu'un saurait comment faire pour obtenir du texte clignotant dans une fenêtre DOS ?![]()
Bonsoir à tous,
je suis débutant et je voudrais savoir si quelqu'un saurait comment faire pour obtenir du texte clignotant dans une fenêtre DOS ?![]()
Alors il faut associer :
- un printf("blabla")
- une tempo que tu peux obtenir dans une bibliothèque (facile à trouver il faut juste chercher...)
- tu effaces l'écran
- une deuxième tempo
et tout ça dans une boucle while...![]()
Bonsoir , je sais que cela est possible sous linux
notament de la maniere suivante
Sinon pour windows je ne sais pas trop désolé :]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #define couleur(param) printf("\033[%sm",param) main() { couleur("5");printf("Ce texte clignote");couleur("0"); }
Salut,
Si tu code ton application uniquement sous DOS, et qu'il n'est pas prévu de le porter sous console "ansi compliant", tu peux te tourner vers la bibliotheque conio, s'il est disponible sous ton EDI (cherche conio2 si tu utilises dev-cpp ou code::blocks)
Tu disposera alors de 255 couleurs (en fait, de 16 couleurs pour l'affichage et 16 pour le fond), dont les 8 dernières couleurs de fond seront clignotantes, mais, uniquement si ta ligne de commande n'est pas en "mode fenetré" (<ALT>+<ENTER> pour passer en mode fenetré<-->plein écran)
Mais, il faut bien etre conscient que ce n'est pas portable... sous linux, il y a moyen d'utiliser des séquence d'échapement ANSI, et, si la portabilité est importante, tu peux te tourner vers des bibliotheques telles que ncurses et dérivées![]()
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
merci, mais connais-tu la commande à utiliser avec le conio ?!
J'utilise en effet DevC++
de tete, textattr(0x00->0xFF), textbackground(0x0->0xF, ou 0x8->0xF clignotent) et textcolor(0x0->0xF)
En gros, les la couleur de textattr tient sur un octet, dont les quatre bits de poids fort représente le fond (toujours selon le meme principe) et les quatre bits de poids faible représentent la couleur de l'écriture
Il n'est pas impossible qu'il faille avec l'une ou l'autre de ces instructions utiliser cprintf (meme synthaxe que printf) pour qu'effectivement la couleur soit prise en compte![]()
A méditer: La solution la plus simple est toujours la moins compliquée
Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 février 2014
mon tout nouveau blog
Pourquoi des valeurs bizarres ? Utiliser BLINK, c'est fait pour.Envoyé par koala01
(TurboC / Borland C)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include <conio.h> int main (void) { textbackground (RED); textcolor (WHITE | BLINK); cprintf ("All hands, battle station !"); return 0; }Non vérifié, je n'ai plus de Borland C sous la main
Attention, pas de BLINK avec le CONIO de MinGW.
J'ai installé le CONIO DevPack mais lorsque je compile j'ai une erreur :
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:30: error: conflicting types for 'BLACK'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:25: error: previous definition of 'BLACK' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:31: error: conflicting types for 'BLUE'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:26: error: previous definition of 'BLUE' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:32: error: conflicting types for 'GREEN'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:27: error: previous definition of 'GREEN' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:33: error: conflicting types for 'CYAN'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:28: error: previous definition of 'CYAN' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:34: error: conflicting types for 'RED'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:29: error: previous definition of 'RED' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:35: error: conflicting types for 'MAGENTA'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:30: error: previous definition of 'MAGENTA' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:36: error: conflicting types for 'BROWN'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:31: error: previous definition of 'BROWN' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:37: error: conflicting types for 'LIGHTGRAY'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:32: error: previous definition of 'LIGHTGRAY' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:38: error: conflicting types for 'DARKGRAY'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:33: error: previous definition of 'DARKGRAY' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:39: error: conflicting types for 'LIGHTBLUE'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:34: error: previous definition of 'LIGHTBLUE' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:40: error: conflicting types for 'LIGHTGREEN'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:35: error: previous definition of 'LIGHTGREEN' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:41: error: conflicting types for 'LIGHTCYAN'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:36: error: previous definition of 'LIGHTCYAN' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:42: error: conflicting types for 'LIGHTRED'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:37: error: previous definition of 'LIGHTRED' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:43: error: conflicting types for 'LIGHTMAGENTA'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:38: error: previous definition of 'LIGHTMAGENTA' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:44: error: conflicting types for 'YELLOW'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:39: error: previous definition of 'YELLOW' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:46: error: conflicting types for 'WHITE'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:41: error: previous definition of 'WHITE' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:46: error: conflicting types for 'COLORS'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:41: error: previous declaration of 'COLORS' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:176: error: conflicting types for '_conio_gettext'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:56: error: previous declaration of '_conio_gettext' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:176: error: conflicting types for '_conio_gettext'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:56: error: previous declaration of '_conio_gettext' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:189: error: conflicting types for 'puttext'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:72: error: previous declaration of 'puttext' was here
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio2.h:189: error: conflicting types for 'puttext'
D:/DEV/Dev-Cpp/Bin/../lib/gcc/mingw32/3.4.2/../../../../include/conio.h:72: error: previous declaration of 'puttext' was here
Exécution terminée
que dois-je faire ?
Il faut inclure uniquement <conio2.h> et pas <conio.h>. On est bien d'accord ?Envoyé par GouKen
et pourquoi pas simplement jouer avec un printf("\r"); et sleep?
je pose la question betement, vut que personne en as parlé, je me dis que y'as ptetre un truc qui m'echappe ... me semble que ça marche sous dos.
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
16
17
18
19
20 #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main () { int i; for (i = 0; i < 10; i++) { printf ("\rhello !"); fflush (stdout); sleep (1); printf ("\rWorld !"); fflush (stdout); sleep (1); } printf ("\n"); return EXIT_SUCCESS; }![]()
ouais c'est ce que j'avais fait :/Envoyé par Emmanuel Delahaye
sinon ton truc Dark_Ebola marche pas mal
Ben... l'avantage de conio c'est que c'est la carte graphique qui s'en occupe. Ça permet d'afficher d'autres textes pendant que le premier continue de clignoter sans avoir à rafraichir l'écran toutes les deux secondes...
Pour une fois que le matériel du pc peut faire quelque chose à ta place c'est mieux d'en profiter ...
bien oauis mais ça marche pas![]()
sinon quelqu'un sait comment je peux faire pour que si l'utililsateur clique sur Entrée à tout moment, ça passe à la page suivante ? j'ai essayé ceci mais ça ne marche pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 for(t = 0 ; t < 250000000 ; t++) { gotoxy(15,30); printf ("\rAppuyez sur Entree pour continuer !"); fflush (stdout); sleep (500); gotoxy(15,30); printf ("\r "); fflush (stdout); sleep (500); do { clavier = getch(); } while (clavier != 13); }
Partager