begin process at 2012 02 13 06:12:31
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > EFFETS DE TEXTES 5 TURBO C++2 DEVC++4

EFFETS DE TEXTES 5 TURBO C++2 DEVC++4


 Information sur la source

Note :
Aucune note
Catégorie :Astuces Niveau :Débutant Date de création :10/04/2002 Date de mise à jour :18/02/2003 09:20:43 Vu / téléchargé :2 573 / 125

Auteur : cmarsc

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

 Description

Afficher le menu autrement avec des effets      

Source

  • // PROGRAMME EN C SOUS DOS TURBO C++ BORLAND
  • // ecrit le 07-04-2002 par cmarsc
  • // MOVE TEXTE5
  • #include <stdio.h>
  • #include <conio.h> // <conio.c> devc++4
  • #include <stdlib.h>
  • #include <string.h>
  • /* mettre 150 pour devc++4 */
  • #define VITESSE_D_AFFICHAGE 500
  • /* remplace delay si non disponible dans votre bibliotheque */
  • void ralentir(void);
  • void blanc(int long_ligne);
  • void effacer_ecran(void);
  • void effet1_droite_gauche_monter(int col_depart, int col_fin,int ligne);
  • void effet1_gauche_droite_monter(int col_depart, int col_fin,int ligne);
  • char *menu[] = {
  • "FILE",
  • "EDIT",
  • "SEARCH",
  • "RUN",
  • "COMPILE",
  • "DEBUG",
  • "PROJECT",
  • "OPTIONS",
  • "WINDOW",
  • "HELP"
  • };
  • int main(void) {
  • char votre_choix;
  • /* textbackground(CYAN); fond vert */
  • clrscr(); /* effacer ecran */
  • _setcursortype(_NOCURSOR); /* supprimer le curseur clignotant */
  • gotoxy(15,25);
  • textcolor(YELLOW);
  • cprintf("TAPER UN CHIFFRE ENTRE 1 et 2 ESC pour sortir ");
  • textcolor(10);
  • while(1) { /* TAPER ESC POUR SORTIR */
  • votre_choix = getch();
  • do {
  • ralentir(); /* temps d'attente */
  • effacer_ecran();
  • switch (votre_choix) {
  • case '1' :
  • /* col_depart = 80 col_fin = 2 ligne = choix aleatoire */
  • effet1_droite_gauche_monter(80,2, rand() %19+4);
  • break;
  • case '2' :
  • /* col_depart = 2 col_fin = 74 ligne = choix aleatoire */
  • effet1_gauche_droite_monter(2,74,rand() %19+4);
  • break;
  • case 27: exit(0); /* sortir du programme */
  • break;
  • default:
  • break;
  • }
  • } while (!kbhit());
  • } // fin de while(1)
  • // 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 blanc(int long_ligne) {
  • int i1;
  • for (i1 = 0; i1 <= long_ligne; ++i1) {
  • 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 effet1_droite_gauche_monter(int col_depart, int col_fin,int ligne) {
  • int i1, i2, i3 , long_ligne, long_ligne_pre;
  • /* nbre d'elements dans le menu */
  • int max_menu = sizeof(menu) / sizeof(menu[0]);
  • long_ligne = 0; long_ligne_pre =0;
  • for (i1 = 0; i1 < max_menu; ++i1) {
  • /* longueur de la ligne */
  • long_ligne = strlen(menu[i1]);
  • for (i2 = 0; ( col_depart - long_ligne ) - i2 > col_fin +long_ligne_pre ; ++i2) {
  • gotoxy( ( col_depart - long_ligne ) - i2 ,ligne);
  • cprintf("%s ",menu[i1]);
  • ralentir(); /* ralentir l'effet */
  • }
  • /* remonter de n lignes : choix aleatoire en argument */
  • for (i3 = 0; i3 < ligne ; ++i3) {
  • gotoxy( ( col_depart - long_ligne ) - i2 ,ligne-i3);
  • cprintf("%s ",menu[i1]);
  • gotoxy( ( col_depart - long_ligne ) - i2 ,ligne+1-i3);
  • blanc(long_ligne);
  • ralentir(); /* ralentir l'effet */
  • }
  • /* cummuler la longueur des lignes precedentes */
  • long_ligne_pre += long_ligne + 2;
  • }
  • return ;
  • } /* fin de la fonction : effet2_droite_gauche_monter */
  • void effet1_gauche_droite_monter(int col_depart, int col_fin,int ligne) {
  • int i1, i2, i3 ,long_ligne, long_ligne_pre;
  • /* nbre d'elements dans le menu */
  • int max_menu = sizeof(menu) / sizeof(menu[0]);
  • long_ligne = 0; long_ligne_pre = 0;
  • for (i1 = 0; i1 < max_menu; ++i1) {
  • /* longueur de la ligne */
  • long_ligne = strlen((menu[(max_menu-1)-i1]));
  • for (i2 = 0; col_depart + i2 < (col_fin - long_ligne) - long_ligne_pre; ++i2) {
  • gotoxy(col_depart + i2 ,ligne);
  • cprintf(" %s",menu[(max_menu-1)-i1]);
  • ralentir(); /* ralentir l'effet */
  • }
  • /* remonter de n lignes : choix aleatoire en argument */
  • for (i3 = 0; i3 < ligne ; ++i3) {
  • gotoxy( col_depart + i2 ,ligne-i3);
  • cprintf(" %s",menu[(max_menu-1)-i1]);
  • gotoxy( col_depart + i2 ,ligne+1-i3);
  • blanc(long_ligne);
  • ralentir(); /* ralentir l'effet */
  • }
  • /* cummuler la longueur des lignes precedentes */
  • long_ligne_pre += long_ligne + 2 ;
  • }
  • return ;
  • } /* fin de la fonction : effet2_gauche_droite_monter */
//  PROGRAMME EN C SOUS DOS TURBO C++ BORLAND
//  ecrit le 07-04-2002 par cmarsc 
//  MOVE TEXTE5

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

/* mettre 150 pour devc++4 */
#define VITESSE_D_AFFICHAGE 500

/* remplace delay si non disponible dans votre bibliotheque */
void ralentir(void);                
                                             
void blanc(int long_ligne);
void effacer_ecran(void);

void effet1_droite_gauche_monter(int col_depart, int col_fin,int ligne);
void effet1_gauche_droite_monter(int col_depart, int col_fin,int ligne);

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

int main(void) {

    char votre_choix;
    /* textbackground(CYAN);            fond vert */

    clrscr();                    /* effacer ecran */

    _setcursortype(_NOCURSOR);  /* supprimer le curseur clignotant */


    gotoxy(15,25);
    textcolor(YELLOW);
    cprintf("TAPER UN CHIFFRE ENTRE 1 et 2   ESC pour sortir ");

    textcolor(10);

    while(1) {      /* TAPER ESC POUR SORTIR */

        votre_choix = getch();

     do {

        ralentir(); /* temps d'attente */
        effacer_ecran();

        switch (votre_choix) {

        case '1' :

             /* col_depart = 80 col_fin =   2   ligne = choix aleatoire */
                effet1_droite_gauche_monter(80,2, rand() %19+4);

        break;

        case '2' :
             /* col_depart = 2   col_fin = 74   ligne = choix aleatoire */
                effet1_gauche_droite_monter(2,74,rand() %19+4);

        break;

        case 27:    exit(0);    /* sortir du programme */
        break;
        default:

        break;
        }
        } while (!kbhit());

    } // fin de while(1)

// 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 blanc(int long_ligne) {
    int i1;
    for (i1 = 0; i1 <= long_ligne; ++i1) {
        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 effet1_droite_gauche_monter(int col_depart, int col_fin,int ligne) {

    int i1, i2, i3 , long_ligne, long_ligne_pre;

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

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


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

for (i2 = 0; ( col_depart - long_ligne ) - i2 > col_fin +long_ligne_pre ; ++i2) {
      gotoxy( ( col_depart - long_ligne ) - i2 ,ligne);

      cprintf("%s ",menu[i1]);
       ralentir();      /* ralentir l'effet */
}

        /* remonter de n lignes : choix aleatoire en argument */
        for (i3 = 0;    i3 < ligne ; ++i3) {
            gotoxy( ( col_depart - long_ligne ) - i2 ,ligne-i3);
            cprintf("%s ",menu[i1]);

            gotoxy( ( col_depart - long_ligne ) - i2 ,ligne+1-i3);
            blanc(long_ligne);
            ralentir();      /* ralentir l'effet    */
        }

        /* cummuler la longueur des lignes precedentes */
        long_ligne_pre += long_ligne + 2;

    }

return ;
}        /* fin de la fonction :    effet2_droite_gauche_monter */



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

    int i1, i2, i3 ,long_ligne, long_ligne_pre;

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

    long_ligne = 0;     long_ligne_pre = 0;

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

        /* longueur de la ligne */
        long_ligne = strlen((menu[(max_menu-1)-i1]));


for (i2 = 0; col_depart + i2 < (col_fin - long_ligne) - long_ligne_pre; ++i2) {

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

   ralentir();      /* ralentir l'effet */
}

        /* remonter de n lignes : choix aleatoire en argument */
        for (i3 = 0;    i3 < ligne ; ++i3) {
            gotoxy( col_depart + i2 ,ligne-i3);
            cprintf(" %s",menu[(max_menu-1)-i1]);

            gotoxy( col_depart + i2 ,ligne+1-i3);
            blanc(long_ligne);
            ralentir();      /* ralentir l'effet */
        }

        /* cummuler la longueur des lignes precedentes */
        long_ligne_pre += long_ligne + 2 ;

    }

return ;
}        /* fin de la fonction :    effet2_gauche_droite_monter */
          

 Conclusion

//  PROGRAMME EN C SOUS DOS TURBO C++  DEVC++4
//  ecrit le 07-04-2002 par cmarsc  
//  MOVE TEXTE5      

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • MOVE5.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier4 815 octets
  • move5.exeTélécharger ce fichier [Réservé aux membres club]13 901 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 SCHEDULER RR FIFO par yvesB87
Source avec Zip ALGORITHMES RÉCURSIFS VS ALGORITHMES ITÉRATIFS par yvesB87
Source avec Zip Source avec une capture C++ FORMAT D'IMAGE AVEC QT par pop70
Source avec une capture EXEMPLE DE POINTEURS DE FONCTION par pop70
Source avec Zip Source avec une capture [C++] CLASS REGISTER par Miwik

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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 : 2,590 sec (3)

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