Affichage d'un message avec effet de fondu

Description

Le code afiche un message de façon esthetique, un effet de fondu jaune sur fond noir.

Source / Exemple :


import java.awt.*;

public class Clign extends java.applet.Applet  implements Runnable
{
Thread t;
int Indic = 1, x1, x2;
Graphics Gmem;  //Déclaration d'un objet graphics 
Image ii; //Objet image
String text[]={"Bienvenue", "      sur", " PCisland"};            //message à afficher

        public void init()
	{
        ii = createImage(getSize().width,getSize().height);   //création d'une image à la taille de l'applet
        Gmem = ii.getGraphics();   //Pour le création de l'image avec les outils graphiques de java
        }

//Démarrage du Thread
        public void start()
        {
        	if(t==null)
                {
                t = new Thread(this);
                t.start();
                }
        }

//Arrêt du Thread
        public void stop()
        {
        if(t!=null)
        {
        Indic =0;
        t=null;
        }
        }

        public void run()
        {
        	while(Indic==1)
        	{
                for(x2=0; x2<3; x2++)  //Passe les mots un par un ici 3 mots
                {
                        for(x1=0;x1<256;x1+=2)        //Augmente le ton de la couleur 
        		{
                        attendre(10);
                        }
                        for(x1=255; x1>0;x1--)       //Diminue le ton de la couleur
                        {
                        attendre(8);
                        }
                }
        	}
        }

        public void attendre(int t)       //fonction d'attente + rafraichissement applet
        {
                        repaint();
        		try
        		{
        		Thread.sleep(t);
        		}
                        catch(InterruptedException ie)
                        {
                        }
        }

//Pour éviter les scintillement
        public void update(Graphics g)
        {
        paint(g);
        }

        public void paint(Graphics g)
        {
        Gmem.setColor(Color.black);     //Couleur de fond
        Gmem.fillRect(0,0,300,100);       //rectangle à la taille de l'applet
        Gmem.setColor(new Color(x1,x1,0));     //Couleur du texte
        Gmem.setFont(new Font("Helvetica",Font.BOLD,40));  //Police du texte+taille
        Gmem.drawString(text[x2],55,60);      //Affichage des messages
        g.drawImage(ii,0,0,this);      //Affichage de l'image 
        }
}

Conclusion :


Pour faire un effet de fondu, on utilise les thread pour créer une animation.
Toute les x secondes on augmente les ton des couleurs RGB ce qui donne cet effet.
Le reste de l'explication est dans la source.
Si vous avez des questions écrivez moi!

Codes Sources

A voir également

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.