Fading de texte (in&out) pour applet

0/5 (2 avis)

Snippet vu 6 458 fois - Téléchargée 26 fois

Contenu du snippet

Slt.
Voila j'ai eu à programmer moi même une classe Fading pour un projet, donc je la met ici ca pourra peut être en faire profiter d'autres.
Fade in et out de deux String (vous pouvez en ajouter/enlever...) en couleur de caractère blanc (pour du blanc sur fond noir dans mon cas).
Voyez l'explication pour personnaliser votre couleur.

Je suis initié depuis peu à Java, merci de me laissez vos critiques et vos conseils.
JavA^Bog.

Source / Exemple :


/*    class FADING (JBean like) for Java Applets 

  • ============================
  • made by: JavA^Bog.
  • mailto: b0p.@voila.fr
  • note: Use this class to make a text fading (in&out) effect.
*
  • Specify the name of the author by keeping this notes up to your code. Thx
  • All rights reserved to the author - © 2002
  • /
//********************************************************* /*
  • Execution/Utilisation du Fading:
*
  • ## FADE Text1 ##
  • Fading.Activation(1) // appel à la fonction de fading de la class Fading
*
  • ## FADE Text2 ##
  • Fading.Activation(2) // idem , cette fois ci pour le second traitement
*
                                                                                                                    • /
// ------------- CODE : --------------- class Fading extends javax.swing.JApplet { int i; Color c = new Color(i,i,i); Graphics G; // String private String Text1 ="Votre texte" ; private String Text2 ="Votre second texte" ; // définition d'une matrice Tridimensionnelle R,G,B : {0->255} int Couleur[][][] = new int[256][256][256]; // fonction principale qui traite le fade in-out /* nappel: argument entier permettant de differencier le traitement de fade de String Text1 et Text2 : -> nappel=1 pour Text1 -> nappel!=1 (=2 , soyons logique) pour Text2
  • /
public void Activation(int nappel) { if(nappel==1) { for(i=0 ; Couleur[i][i][i] < Couleur[256][256][256] ; i+=15) { c= new Color(i,i,i); G.setColor(c); G.drawString(Text1,32,25); } for(i=254 ; Couleur[i][i][i] > Couleur[0][0][0] ; i-=15) { c= new Color(i,i,i); G.setColor(c); G.drawString(Text1,32,25); } } else // nappel != 1 : Traitement de String Text2. { for(i=0 ; Couleur[i][i][i] < Couleur[256][256][256] ;i+=15) { c= new Color(i,i,i); G.setColor(c); G.drawString(Text2,10,25); } for(i=254 ; Couleur[i][i][i] > Couleur[0][0][0] ; i-=15) { c= new Color(i,i,i); G.setColor(c); G.drawString(Text2,10,25); } } } // fin de public void Activation(int) }

Conclusion :


En fin de compte la création d'une matrice Couleur[][][] n'etait pas nécessaire mais ca fait + style ;)

Utilisation de la classe / mode de fonctionnement :
- faites un import javax.swing.*
- Vous pourrez faire un appel à la fonction Activation de la classe en lui passant comme argument un entier ==1 pour traiter la 1ere String en Fade , et !=1 pour traiter la seconde String.

=> Le Fading se fait à l'execution de la fonction Activation : on initialise le texte en couleur noire (en R=0 , G=0 , B=0) puis on incrémente les attributs de R,G et B de 15 en 15... jusqu'à la couleur blanc (R=255 , G=255 , B=255).
On fait le chemin inverse pour faire le Fade out en décrémentant de 15 en 15.

P.S: Si vous souhaitez changer la couleur de caracteres à 'fader' , initialisez la variable int i; à une autre valeur correspondant à la couleur souhaitée.
Si cette couleur n'est pas 'unie' (R != G != B) alors refaites les boucles en definissant 3 variables.
N.B: Vous pouvez avoir le code RGB d'une couleur via Paint (pour les utilisateurs Win) en double cliquant sur une couleur de la palette et "définir une couleur personnalisée".

Voila donc je pense que vous n'aurez pas de mal à l'adapter à votre code, @+

A voir également

Ajouter un commentaire Commentaires
Messages postés
29
Date d'inscription
mercredi 26 décembre 2001
Statut
Membre
Dernière intervention
28 janvier 2003

G rajouté ququs commentaires car certains trucs pouvaient peut etre manquer de clareté.
Messages postés
29
Date d'inscription
mercredi 26 décembre 2001
Statut
Membre
Dernière intervention
28 janvier 2003

Tous vos commentaires sont les bienvenus :)

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.