Effet de texte vertical turbo c++2 dos devc++4

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 089 fois - Téléchargée 38 fois

Contenu du snippet

EFFET DE TEXTE VERTICAL

Source / Exemple :


//  PROGRAMME EN C SOUS DOS TURBO C++ BORLAND
//  ecrit le 15-04-2002 par cmarsc  
//  EFFET DE TEXTE VERTICAL

#include <stdio.h>
#include <string.h>         
#include <conio.h>         // <conio.c> devc++4

/* mettre 50 pour devc++4 */
#define VITESSE_D_AFFICHAGE 300

// remplace delay si non disponible dans votre bibliotheque
void ralentir(void);        
void effacer_ecran(void);

void effet_droite_gauche_retour(int col_depart, int col_fin,int ligne);

char *menu[] = {
	"FILE",
	"EDIT",
	"SEARCH",
	"RUN",
	"COMPILE",
	"DEBUG",
	"PROJECT",
	"OPTIONS",
	"WINDOW",
	"HELP"
};

int main(void) {

	//textbackground(CYAN);         // fond vert

	clrscr();                     // effacer ecran

	_setcursortype(_NOCURSOR);    // supprimer le curseur clignotant

	gotoxy(30,25);
	textcolor(YELLOW);
	cprintf(" ESC pour sortir ");

	textcolor(10);

	do {			// TAPER ESC POUR SORTIR

		ralentir();    // temps d'attente
		effacer_ecran();
	   // col_depart = 79    col_fin = 10   ligne = 3
		effet_droite_gauche_retour(79,10,5);

	} while (!kbhit());

return 0;

} // fin de main

void ralentir(void) {
	int i0;   
	for (i0 = 0; i0 < VITESSE_D_AFFICHAGE; i0++){
		gotoxy(1,1);
		cprintf("%1c",'\0');
	}
return;
}

void effacer_ecran(void) {
	int i1;
	for (i1 = 0; i1 < 23; i1++){
		gotoxy(1,1+i1);
		cprintf("%79c",'\0');
	}
return;

}

void effet_droite_gauche_retour(int col_depart, int col_fin,int ligne) {

	int i1, i2,i3,long_ligne;

	// nbre d'element dans le menu
	int max_menu = sizeof(menu) / sizeof(menu[0]);

	for (i1 = 0; i1 < max_menu; ++i1) {

		// longueur de la ligne
		long_ligne = strlen(menu[i1]);

        // aller de la droite vers la gauche
		for (i2 = 0; ( col_depart - long_ligne ) - i2 > col_fin ; ++i2) {

			gotoxy( ( col_depart - long_ligne) - i2 ,ligne+i1);
			cprintf("%s ",menu[i1]);

			ralentir();         // ralentir l'effet
		}

		// retour vers la droite de 25 colonnes
		for (i3 = 0; i3 < 25 ; ++i3) {
			gotoxy( ( col_depart - long_ligne) - i2 + i3 ,ligne+i1);
			cprintf(" %s",menu[i1]);

			ralentir();         // ralentir l'effet

		}

	}
return ;
}       // fin de la fonction :  effet_droite_gauche_retour

Conclusion :


// PROGRAMME EN C SOUS DOS TURBO C++ DEVC++4
// ecrit le 15-04-2002 par cmarsc
// EFFET DE TEXTE VERTICAL ...

A voir également

Ajouter un commentaire

Commentaires

Commenter la réponse de Utilisateur anonyme

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.