Dans cette fiche...

Description de l'applet

Difficulté : Résultat
Une reprise de l'applet Bonjour.class, qui exécute un affichage simple à l'écran, avec cette fois-ci une gestion des couleurs. Votre navigateur n'est pas compatible Java !

 

Listing de l'applet

// --------------------------------------------------
// EXEMPLE 2 : AFFICHAGE DE TEXTE EN JAVA
// --------------------------------------------------
// Cette fois, des couleurs ont été ajoutées !
import java.applet.*;
import java.awt.*;
public class Bonjour1 extends Applet
{
	Color c;  // Créer un objet Color, qui servira vers la fin
	// La méthode init() est appelée au démarrage de l'applet.
	public void init()
	{
		// Définir la couleur du fond de l'applet
		setBackground(Color.black);
	}
	// La méthode paint() est appelée à chaque fois que l'applet
	// est dessinée à l'écran.
	public void paint(Graphics g)
	{
		// Définir la couleur du texte, en jaune
		g.setColor(Color.yellow);
		// Afficher un texte en x=10, y=20, en jaune
		g.drawString("Bonjour tout le monde !", 10, 15);
		// Changer à nouveau la couleur du texte
		g.setColor(Color.red);
		// Afficher un texte plus bas, en rouge
		g.drawString("Voici du rouge...", 10, 30);
		// Afficher un texte en vert
		g.setColor(Color.green);
		g.drawString("Du vert...", 10, 45);
		// Créer cette fois une couleur de notre choix, à
		// partir de composantes Rouge/Vert/Bleu
		// En anglais : RGB (Red, Green, Blue).
		// On utilise pour cela l'objet Color c déclaré
		// tout en haut.
		c = new Color(200, 30, 240);
		g.setColor(c);
		g.drawString("Une couleur définie par ses composantes RGB...", 10, 60);
		// Un autre exemple, plus rapide, car il n'utilise pas
		// l'objet Color
		g.setColor(new Color(120, 200, 255));
		g.drawString("Dernier exemple.", 10, 75);
	}
}

Télécharger le listingTélécharger le listing

 

Le listing en détail...

Seules les nouveautés par rapport aux listings précédents sont commentées ici. Non mais !

Color c;
On déclare une variable objet, de type Color.
L'objet Color permet différentes opérations sur les couleurs.
La variable c sera utilisée plus loin dans le listing.
 
public void init()
{
}
Déclaration de la méthode init(), qui est appelée une fois lors du chargement de l'applet.
C'est dans cette méthode qu'on initialise (vous l'auriez pas deviné !) les variables par défaut de l'applet.
C'est aussi ici que l'on définit la couleur fond de l'applet, via la méthode setBackground(). Voir plus bas.

Les méthodes peuvent renvoyer des valeurs. Ce n'est pas le cas de la méthode init(), qui est donc de type void.
 
setBackground(Color.black);
Cette méthode permet d'appliquer une couleur au fond de l'applet.
Entre parenthèses, Color.black représente la couleur noire.
Il ne s'agit pas d'une valeur numérique, mais d'un objet.
 
public void paint(Graphics g)
{
}
Cette méthode a été décrite précédemment : elle est appelée à chaque fois que l'applet doit être dessinée.
C'est ici qu'on place la définition des couleurs, et l'affichage du texte.
 
g.setColor(Color.yellow);
On définit la couleur jaune pour l'objet g, qui représente la zone graphique de l'applet.
Cette couleur influencera tout tracé à venir, notamment l'affichage du texte.
 
g.setColor(Color.red);
g.setColor(Color.green);
Idem, pour les couleurs rouge et vert.
Pour la liste des couleurs prédéfinies de Java, cliquez ici.
 
c = new Color(200, 30, 240);
g.setColor(c);
Cette fois, on souhaite définir une couleur par ses composantes RGB (Red, Green, Blue);
On crée donc un objet Color, que l'on affecte à la variable c, qui a été déclarée en haut du listing.
Ensuite, on définit la couleur comme expliqué plus haut, par setColor().
 
g.setColor(new Color(120, 200, 255));
Même principe que ci-dessus, mais en plus rapide.
Une seule ligne crée l'objet Color, puis définit cette couleur comme couleur de tracé.

 

Intégration de l'applet dans la page

Voici le code qui a été utilisé dans cette page HTML pour faire apparaître l'applet :

<applet code="Bonjour1.class" width=250 height=90>
Votre navigateur n'est pas compatible Java !
</applet>

Pour plus de précisions sur l'intégration d'une applet, cliquez ici.

 

Hit-Parade