begin process at 2012 05 27 15:59:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > EFFETS D'AFFICHAGES 1 MODE GRAPHIQUE DOS TURBO C++2

EFFETS D'AFFICHAGES 1 MODE GRAPHIQUE DOS TURBO C++2


 Information sur la source

Note :
Aucune note
Catégorie :Graphique Niveau :Débutant Date de création :19/06/2002 Date de mise à jour :17/02/2003 11:23:22 Vu / téléchargé :2 487 / 158

Auteur : cmarsc

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description


Source

  • // PROGRAMME EN C SOUS DOS TURBO C++2 BORLAND
  • // ecrit le 18-06-2002 par cmarsc
  • // EFFETS D'AFFICHAGES MODE GRAPHIQUE
  • #include <graphics.h>
  • #include <stdlib.h>
  • #include <stdio.h>
  • #include <conio.h>
  • #include <dos.h>
  • #define FOND_ECRAN BLACK
  • int initialiser_mode_graphique (void);
  • void entree_clavier (void);
  • void box(int x1, int y1,int x2, int y2, int coul_fond,int coul_bord);
  • void message (int x1, int y1, int coul_texte,char *texte, int taille_texte);
  • void effet_cadre1 (int x1, int y1,int x2, int y2, int couleur);
  • void effet_cadre2 (int x1, int y1,int x2, int y2, int couleur);
  • void effet_cadre3 (int x1, int y1,int x2, int y2, int couleur);
  • void effet_cadre4 (int x1, int y1,int x2, int y2, int couleur);
  • void effet_cadre5 (int x1, int y1,int x2, int y2, int couleur);
  • int main(void)
  • {
  • initialiser_mode_graphique();
  • // cadre vert haut
  • // x1 = 1 y1 = 1 x2 = max y2 = 30 coul_fond rouge coul_bord violet
  • box(1,1, getmaxx(), 30, 1 , LIGHTBLUE);
  • // x1 = 10 y1 = 3 coul_fond = vert texte taille_texte = 7
  • message(10,3, LIGHTCYAN, "ENTREZ UN CHIFFRE ENTRE 1 ET 5", 7);
  • message(505,3, LIGHTRED, "ESC QUITTER", 7);
  • // grand cadre noir avec un bord violet
  • box(1,35, getmaxx(), getmaxy(), FOND_ECRAN,LIGHTBLUE);
  • entree_clavier();
  • return 0;
  • }
  • int initialiser_mode_graphique(void) {
  • // detection automatique du mode video
  • int gdriver = DETECT, gmode, errorcode;
  • // initialiser le mode graphique
  • initgraph(&gdriver, &gmode, "c:\\tc\\bgi");
  • errorcode = graphresult();
  • // tester si une erreur se produit
  • if (errorcode != grOk)
  • {
  • printf("ERREUR : %s\n", grapherrormsg(errorcode));
  • printf("Appuyez sur une touche :");
  • getch();
  • exit(1);
  • }
  • return 0;
  • } // fin de la fonction initialiser_mode_graphique
  • void box(int x1, int y1,int x2, int y2, int coul_fond,int coul_bord) {
  • int i1;
  • // rectangle en couleur
  • setfillstyle(SOLID_FILL,coul_fond);
  • bar (x1, y1, x2, y2);
  • setcolor(coul_bord);
  • // dessiner un rectangle avec un effet de relief 3
  • for (i1 = 0; i1 < 3; i1++) {
  • rectangle (x1+i1, y1+i1, x2-i1 , y2-i1);
  • }
  • setcolor(WHITE);
  • // cadre blanc
  • rectangle (x1+1, y1+1, x2-1, y2-1);
  • return ;
  • } // fin de la fonction box
  • void message(int x1, int y1, int coul_texte, char *texte, int taille_texte) {
  • // afficher un message avec differentes tailles
  • // de caracteres
  • int i;
  • settextstyle(SMALL_FONT, HORIZ_DIR,taille_texte);
  • // faire un effet d'ombre
  • setcolor(BLACK);
  • for (i = 0; i< 4;i++) {
  • outtextxy(x1+ 1, y1 + i, texte);
  • }
  • // texte en avant plan
  • setcolor(coul_texte);
  • outtextxy(x1,y1, texte);
  • return ;
  • }
  • void entree_clavier(void) {
  • char votre_choix;
  • while(1) { // TAPER ESC POUR SORTIR
  • votre_choix = getch();
  • switch (votre_choix) {
  • case '1':
  • // x1 = 50 y1 = 45 x2 = 600 y2 = 450 couleur = vert
  • effet_cadre1(50, 45,600, 450, CYAN);
  • sleep(1); // effacer avec le meme effet
  • effet_cadre1(50, 45,600, 450, FOND_ECRAN);
  • break;
  • case '2':
  • // x1 = 10 y1 =105 x2 = 500 y2 = 450 couleur = rouge vif
  • effet_cadre2(10,105,500,450, LIGHTRED);
  • sleep(1); // effacer avec le meme effet
  • effet_cadre2(10,105,500,450, FOND_ECRAN);
  • break;
  • case '3':
  • // x1 = 105 y1 = 75 x2 = 500 y2 = 450 couleur = vert
  • effet_cadre3(105, 75, 500, 450, GREEN);
  • sleep(1); // effacer avec le meme effet
  • effet_cadre3(105, 75, 500, 450, FOND_ECRAN);
  • break;
  • case '4':
  • // x1 = 150 y1 = 45 x2 = 600 y2 = 400 couleur = jaune
  • effet_cadre4(150,145, 600, 400, YELLOW);
  • sleep(1); // effacer avec le meme effet
  • effet_cadre4(150,145, 600, 400, FOND_ECRAN);
  • break;
  • case '5':
  • // x1 = 15 y1 = 45 x2 = 630 y2 = 450 couleur = violet
  • effet_cadre5(15, 45, 630, 450, LIGHTBLUE);
  • sleep(1); // effacer avec le meme effet
  • effet_cadre5(15, 45, 630, 450, FOND_ECRAN);
  • break;
  • case 27: // fin du programme
  • closegraph(); // fin mode graphique
  • exit(0);
  • break;
  • default:
  • break;
  • } // fin de switch
  • } // fin de while(1)
  • // return ;
  • } // fin de la fonction entree_clavier
  • void effet_cadre1(int x1, int y1,int x2, int y2, int couleur) {
  • // afficher du haut en bas
  • int i1;
  • setcolor(couleur);
  • for (i1 = 0; (y1 + i1) <= y2; i1++) {
  • rectangle (x1, y1, x2, y1 + i1);
  • }
  • return ;
  • } // fin de la fonction effet_cadre1
  • void effet_cadre2(int x1, int y1,int x2, int y2, int couleur) {
  • // afficher de bas en haut
  • int i1;
  • setcolor(couleur);
  • for (i1 = 0; (y2 - i1) >= y1; i1++ ) {
  • rectangle (x1, y2 - i1, x2, y2);
  • }
  • return ;
  • } // fin de la fonction effet_cadre2
  • void effet_cadre3(int x1, int y1,int x2, int y2, int couleur) {
  • // afficher de gauche vers la droite
  • int i1;
  • setcolor(couleur);
  • for (i1 = 0; (x1 + i1) <= x2; i1++) {
  • rectangle (x1, y1, x1+i1, y2);
  • }
  • return ;
  • } // fin de la fonction effet_cadre3
  • void effet_cadre4(int x1, int y1,int x2, int y2, int couleur) {
  • // afficher de la droite vers la gauche
  • int i1;
  • setcolor(couleur);
  • for (i1 = 0; (x2 - i1) >= x1; i1 ++) {
  • rectangle (x2 - i1, y1, x2, y2);
  • }
  • return ;
  • } // fin de la fonction effet_cadre4
  • void effet_cadre5(int x1, int y1,int x2, int y2, int couleur) {
  • // afficher du milieu vers les cotes
  • int i1, i2;
  • float milieu_x,milieu_y;
  • // calculer le centre de la figure
  • milieu_x = x1 + ((x2 - x1) / 2);
  • milieu_y = y1 + ((y2 - y1) / 2);
  • setcolor(couleur);
  • for (i1 = 0, i2 = 0; (milieu_y+i1 >= y1) && (milieu_x -i2 >= x1); ) {
  • if (milieu_y -i1 >= y1) i1 ++;
  • if (milieu_x -i2 >= x1) i2 ++;
  • rectangle (milieu_x-i2, milieu_y -i1, milieu_x + i2 , milieu_y+i1);
  • }
  • return ;
  • } // fin de la fonction effet_cadre5
//  PROGRAMME EN C SOUS DOS TURBO C++2 BORLAND
//  ecrit le 18-06-2002 par cmarsc
//  EFFETS D'AFFICHAGES MODE GRAPHIQUE


#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>

#define FOND_ECRAN BLACK

int initialiser_mode_graphique (void);

void entree_clavier (void);
void box(int x1, int y1,int x2, int y2, int coul_fond,int coul_bord);
void message (int x1, int y1, int coul_texte,char *texte, int taille_texte);

void effet_cadre1 (int x1, int y1,int x2, int y2, int couleur);
void effet_cadre2 (int x1, int y1,int x2, int y2, int couleur);
void effet_cadre3 (int x1, int y1,int x2, int y2, int couleur);
void effet_cadre4 (int x1, int y1,int x2, int y2, int couleur);
void effet_cadre5 (int x1, int y1,int x2, int y2, int couleur);


int main(void)
{

   initialiser_mode_graphique();

   // cadre vert haut   

// x1 = 1  y1 = 1  x2 = max  y2 = 30 coul_fond rouge coul_bord violet
   box(1,1, getmaxx(), 30, 1  , LIGHTBLUE);


// x1 = 10  y1 = 3  coul_fond = vert  texte   taille_texte = 7
message(10,3, LIGHTCYAN, "ENTREZ UN CHIFFRE ENTRE 1 ET 5", 7);
message(505,3, LIGHTRED, "ESC QUITTER", 7);

   // grand cadre noir avec un bord violet
   box(1,35, getmaxx(), getmaxy(), FOND_ECRAN,LIGHTBLUE);

   entree_clavier();
   return 0;
}

int initialiser_mode_graphique(void) {

   // detection automatique du mode video
   int gdriver = DETECT, gmode, errorcode;

// initialiser le mode graphique
   initgraph(&gdriver, &gmode, "c:\\tc\\bgi");

   errorcode = graphresult();

// tester si une erreur se produit
   if (errorcode != grOk)
   {
	  printf("ERREUR : %s\n", grapherrormsg(errorcode));
	  printf("Appuyez sur une touche :");
	  getch();
	  exit(1);
   }

return 0;

} // fin de la fonction initialiser_mode_graphique


void box(int x1, int y1,int x2, int y2, int coul_fond,int coul_bord) {

	 int i1;
	 // rectangle en couleur
	 setfillstyle(SOLID_FILL,coul_fond);
	 bar (x1, y1, x2, y2);

	 setcolor(coul_bord);
	 // dessiner un rectangle avec un effet de relief 3
	 for (i1 = 0; i1 < 3; i1++) {
		rectangle (x1+i1, y1+i1, x2-i1 ,  y2-i1);
	 }

	 setcolor(WHITE);
	 // cadre blanc
	 rectangle (x1+1, y1+1, x2-1, y2-1);

return ;
} // fin de la fonction box


void message(int x1, int y1, int coul_texte, char *texte, int taille_texte) {

	 // afficher un message avec differentes tailles
	 // de caracteres
	 int i;
	 settextstyle(SMALL_FONT, HORIZ_DIR,taille_texte);

	 // faire un effet d'ombre
	 setcolor(BLACK);
	 for (i = 0; i< 4;i++) {
	   outtextxy(x1+ 1, y1 + i, texte);
	 }

	 // texte en avant plan
	 setcolor(coul_texte);
	 outtextxy(x1,y1, texte);

return ;
}

void entree_clavier(void) {

	 char votre_choix;
while(1) {	    // TAPER ESC POUR SORTIR

	votre_choix = getch();

	switch (votre_choix) {
	case '1':

	   //  x1 = 50  y1 = 45  x2 = 600 y2  = 450  couleur = vert
		effet_cadre1(50, 45,600, 450, CYAN);
		sleep(1); // effacer avec le meme effet
		effet_cadre1(50, 45,600, 450, FOND_ECRAN);
		break;

	case '2':

	   //  x1 = 10   y1 =105  x2 = 500 y2 = 450  couleur = rouge vif
		effet_cadre2(10,105,500,450, LIGHTRED);
		sleep(1); // effacer avec le meme effet
		effet_cadre2(10,105,500,450, FOND_ECRAN);
		break;

	case '3':

	   //  x1 = 105  y1 = 75  x2 = 500 y2 = 450  couleur = vert
		effet_cadre3(105, 75, 500, 450, GREEN);
		sleep(1); // effacer avec le meme effet
		effet_cadre3(105, 75, 500, 450, FOND_ECRAN);
		break;

	case '4':

	   //  x1 = 150  y1 = 45  x2 = 600 y2 = 400  couleur = jaune
		effet_cadre4(150,145, 600, 400, YELLOW);
		sleep(1); // effacer avec le meme effet
		effet_cadre4(150,145, 600, 400, FOND_ECRAN);
		break;

	case '5':

	   //  x1 = 15  y1 = 45  x2 = 630 y2 = 450  couleur = violet
		effet_cadre5(15, 45, 630, 450, LIGHTBLUE);
		sleep(1); // effacer avec le meme effet
		effet_cadre5(15, 45, 630, 450, FOND_ECRAN);
		break;

	 case 27:     // fin du programme
		closegraph();    // fin mode graphique
		exit(0);
		break;

	 default:

		break;
	 } // fin de switch


} // fin de while(1)
// return ;
} // fin de la fonction entree_clavier



void effet_cadre1(int x1, int y1,int x2, int y2, int couleur) {

	// afficher du haut en bas

	int i1;
	setcolor(couleur);
	for (i1 = 0; (y1 + i1)  <= y2; i1++) {
	   rectangle (x1, y1, x2, y1 + i1);
	}

return ;
} // fin de la fonction effet_cadre1


void effet_cadre2(int x1, int y1,int x2, int y2, int couleur) {

	// afficher de bas en haut

	int i1;
	setcolor(couleur);
	for (i1 = 0; (y2 - i1)  >= y1; i1++ ) {
	   rectangle (x1, y2 - i1, x2, y2);
	}

return ;
} // fin de la fonction effet_cadre2

void effet_cadre3(int x1, int y1,int x2, int y2, int couleur) {

	// afficher de gauche vers la droite

	int i1;
	setcolor(couleur);
	for (i1 = 0; (x1 + i1) <= x2; i1++) {
	   rectangle (x1, y1, x1+i1, y2);
	}

return ;
} // fin de la fonction effet_cadre3


void effet_cadre4(int x1, int y1,int x2, int y2, int couleur) {

	// afficher de la droite vers la gauche

	int i1;
	setcolor(couleur);
	for (i1 = 0; (x2 - i1) >= x1; i1 ++) {
	   rectangle (x2 - i1, y1, x2, y2);
	}

return ;
} // fin de la fonction effet_cadre4


void effet_cadre5(int x1, int y1,int x2, int y2, int couleur) {

	// afficher du milieu vers les cotes

	int i1, i2;
	float milieu_x,milieu_y;

	// calculer le centre de la figure
	milieu_x = x1 + ((x2 - x1) / 2);
	milieu_y = y1 + ((y2 - y1) / 2);

	setcolor(couleur);
	for (i1 = 0, i2 = 0; (milieu_y+i1 >= y1) && (milieu_x -i2 >= x1); ) {

	   if (milieu_y -i1 >= y1) i1 ++;
	   if (milieu_x -i2 >= x1) i2 ++;
	   rectangle (milieu_x-i2, milieu_y -i1, milieu_x + i2 , milieu_y+i1);
	}

return ;
} // fin de la fonction effet_cadre5   

 Conclusion

//  PROGRAMME EN C SOUS DOS TURBO C++2 BORLAND
//  ecrit le 18-06-2002 par cmarsc
//  EFFETS D'AFFICHAGES MODE GRAPHIQUE    

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • AFFICH1G.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier5 880 octets
  • affich1g.exeTélécharger ce fichier [Réservé aux membres club]51 401 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip SIMULATION D'ECRAN BOURSIER TURBOC++ MODE GRAPHIQUE
Source avec Zip TESTE DE DACTYLO TURBO C++2 DEVC++4
Source avec Zip CADRE DEFILANT : DEVC++4 TURBO C++2 SOUS DOS
Source avec Zip CRYPTAGE-DECRYPTAGE : TURBO C++ 2 DEVC++ 4 EN LANGAGE C
Source avec Zip EFFETS DE TEXTES MULTIPLES 2 MODE GRAPHIQUE TURBO C++

 Sources de la même categorie

Source avec Zip Source avec une capture PLANNING D'EQUIPE par grephit
Source avec Zip APPLICATION DE DESSIN DE QUELQUES FIGURES par laguchori
Source avec Zip Source avec une capture HDR EXPOSURE FUSION par mecrosoft
Source avec Zip Source avec une capture IRC CLIENT MULTISERVEUR EN MFC (TXIRC) par TeniX
Source avec Zip ENTETE DU FICHIER BMP (BIPMAP) par k.Lutchi

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales