Le package AWT (pour Abstract Windowing Toolkit)
permet de construire les interfaces graphiques des applications Java, à
l'aide de nombreuses classes spécialisées, et de leurs propriétés
et méthodes. Pour s'assurer qu'une interface reste la même sur tous
les systèmes, tout en restant conforme à son "look and feel",
AWT ne fait qu'indiquer à l'OS l'emplacement et les fonctions rattachés
à un élément - à sa charge de le matérialiser.
AWT est aujourd'hui complété de Swing et des JFC, des classes beaucoup
plus puissantes et légères.
Nous allons voir ici une application illustrative de ce paquetage...
Le code
import java.awt.*;
import java.awt.event.*;
public class cases implements ItemListener
{
Checkbox case1, case2, case3, case4;
TextField champTexte;
public void init()
{
case1 = new Checkbox("La première case");
add(case1);
case1.addItemListener(this);
case2 = new Checkbox("La deuxième case");
add(case2);
case2.addItemListener(this);
case3 = new Checkbox("La troisème case");
add(case3);
case3.addItemListener(this);
champTexte = new TextField(30);
add(text1);
}
public void itemStateChanged(ItemEvent e)
{
champTexte.setText(((Checkbox) e.getItemSelectable()).getLabel()
+ " vient d'être cochée.");
}
}
Nos trois imports nous permettent de faire appel,
si besoin est, aux classes des packages Applet,
AWT et event,
ce que nous faisons dès l'écriture de notre classe cases.java.
Spécifiquement, nous ferons appel aux classes Checkbox
et ItemListener : la première nous permet
d'utiliser les éléments d'interface nécessaires, et la seconde
à gérer les évènements qui s'y rapportent.
Nous définissons nos trois cases comme instance de Checkbox, chacune contenant
un titre (label) qui lui est spécifique. Après les avoir
définies, nous les "ajoutons" à l'interface graphique
via le mot-clé add, puis nous attachons
à chacune d'elles un évènement addItemListener()
qui nous permettra "d'écouter" si l'élément change
d'état.
Nous définissons ensuite un champ texte de 30 caractères, que nous
ajoutons de la même manière.
Le coeur de notre petite interface se trouve dans l'utilisation de la méthode
itemStateChanged(), appartenant à la classe
ItemListener. L'évènement e qui
y est défini est ensuite utilisé pour modifier le contenu du champ
texte (avec setText), en le remplaçant
par le titre de la dernière case cochée. On appelle cette case à
l'aide de e.getItemSelectable(), et son titre
via getLabel. Nous ajoutons au contenu de notre
champ texte un petit complément idoine...
|