Source / Exemple :
// PROGRAMME EN C SOUS DOS TURBO C++ BORLAND
// ecrit le 18-04-2002 par cmarsc
// Dessiner un cadre v2
#include <stdio.h>
#include <conio.h>
#include <dos.h>
void ralentir(void);
void box(int gau, int haut, int droi, int bas,int coul_cadre,int coul_fond);
char ecran_precedent[80];
int i;
int main(void)
{
int i1,i2,i3;
textbackground (CYAN); // fond d'ecran vert
clrscr(); // effacer l'ecran
// dessiner un cadre blanc avec un fond jaune
// colonne gauche 1 ligne haut = 1
// colonne droite 80 ligne bas = 24
box(1, 1, 80, 24, WHITE, YELLOW);
gotoxy(30, 3);
textcolor(RED); // texte ROUGE
cprintf("TAPER ESC pour sortir ");
// sauvegarder l'ecran de fond
gettext(1,1,80,25,ecran_precedent);
do {
sleep(1);
// faire descendre un petit cadre
for (i1 = 0; i1 <11; i1++) {
// dessiner un cadre blanc avec un fond BLEU
// avec un effet progressif
box(40, 1+i1, 45, 3+i1,WHITE,BLUE);
ralentir();
// restituer l'ecran d'avant
puttext(1,1,80,25,ecran_precedent);
}
// elargir le cadre de 30
for (i2 = 0; i2 < 30; i2++) {
box(40-i2, 1+i1, 45+i2, 3+i1,WHITE,BLUE);
ralentir();
}
// ecarter le cadre de 10
for (i3 = 0; i3 < 10; i3++) {
box(40-i2, 1+i1-i3, 45+i2, 3+i1+i3,WHITE,BLUE);
ralentir();
}
} while(!kbhit());
return 0;
}
void ralentir(void) { // peut-etre remplace par delay()
int i0;
for (i0 = 0; i0 < 1500; i0++){
gotoxy(1,1);
cputs("");
}
return;
}
void box(int gau, int haut, int droi, int bas,int coul_cadre,int coul_fond) {
int i,j;
textcolor(coul_fond);
for (i = 0; i+haut < bas;i++) { // remplir le cadre d'une couleur
for (j =0;j+gau<droi ;j++) {
gotoxy(gau+j+1,haut+1+i); cprintf("Û");
}
}
textcolor(coul_cadre);
for (i =0;i+haut<bas;i++) {
gotoxy(gau,haut+i); cprintf("³"); // trait vertical gauche
gotoxy(droi,haut+i); cprintf("³"); // trait vertical droit
}
for (i =0;i+gau<droi;i++) {
gotoxy(gau+i,haut); cprintf("Ä"); // trait horizontal du haut
gotoxy(gau+i,bas); cprintf("Ä"); // trait horizontal du bas
}
// coin superieur gauche
gotoxy(gau,haut); cprintf("Ú"); // coin superieur gauche
gotoxy(droi,haut); cprintf("¿"); // coin superieur droit
gotoxy(gau,bas); cprintf("À"); // coin inferieur gauche
gotoxy(droi,bas); cprintf("Ù"); // coin inferieur droit
return ;
}
Conclusion :
// PROGRAMME EN C SOUS DOS TURBO C++ BORLAND
// ecrit le 18-04-2002 par cmarsc
// Dessiner un cadre + EFFETS V2
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.