Source de Prog46.java
import java.awt.Button;
import java.awt.Label;
import java.applet.Applet;
import java.awt.Color;
public class Prog46
extends Applet {
public void init() {
Button monBouton = new Button("Changer");
add(monBouton);
Label monLabel = new Label("Changer");
add(monLabel);
monLabel.setForeground(Color.red);
monBouton.addActionListener(new Delegue1(monLabel));
}
}
|
Source de Delegue1.java
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Label;
import java.awt.Color;
public class Delegue1
implements ActionListener {
private Label leLabel;
private boolean etatLabel;
public Delegue1(Label lab) {
leLabel = lab;
etatLabel=true;
}
public void actionPerformed(ActionEvent event) {
etatLabel = ! etatLabel;
if (etatLabel)
leLabel.setForeground(Color.red);
else
leLabel.setForeground(Color.blue);
}
}
|
Source de Prog47.java
import java.awt.List;
import java.awt.Label;
import java.applet.Applet;
public class Prog47
extends Applet {
private List maListe;
private Label monLabel;
private final Color tabCouleur[]= {Color.red,
Color.blue, Color.green,
Color.yellow, Color.black };
public void init() {
maListe = new List(3);
maListe.add("bleu");
maListe.add("rouge");
maListe.add("vert");
maListe.add("jaune");
maListe.add("noir");
add(maListe);
monLabel = new Label("Choisir");
add(monLabel);
maListe.addActionListener(new Delegue2(this));
}
public void changeLabel () {
int index = maListe.getSelectedIndex();
monLabel.setBackground(tabCouleur[index]);
}
}
|
Source de Delegue2.java
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Label;
import java.awt.List;
import java.awt.Color;
public class Delegue2
implements ActionListener {
private Prog47 monApplet;
public Delegue2(Prog47 monApp) {
monApplet = monApp;
}
public void actionPerformed(ActionEvent event) {
monApplet.changeLabel();
}
}
|
Source de Prog48.java
import java.awt.MenuBar;
import java.awt.Menu;
import java.awt.MenuItem;
import java.awt.Label;
import java.applet.Applet;
import java.awt.Color;
public class Prog48
extends Applet {
private Label monLabel;
public void init() {
Delegue3 monDelegue= new Delegue3(this);
MenuBar maBarreDeMenu = new MenuBar();
add(maBarreDeMenu);
Menu menu1 = new Menu("fond");
maBarreDeMenu.add(menu1);
MenuItem m1rouge = new MenuItem("fond rouge");
m1rouge.addActionListener(monDelegue);
menu1.add(m1rouge);
MenuItem m1bleu = new MenuItem("fond bleu");
m1bleu.addActionListener(monDelegue);
menu1.add(m1bleu);
MenuItem m1vert = new MenuItem("fond vert");
m1vert.addActionListener(monDelegue);
menu1.add(m1vert);
menu1.addSeparator();
MenuItem m1noir = new MenuItem("fond noir");
m1noir.addActionListener(monDelegue);
menu1.add(m1noir);
Menu menu2 = new Menu("texte");
maBarreDeMenu.add(menu2);
MenuItem m2rouge = new MenuItem("texte rouge");
m2rouge.addActionListener(monDelegue);
menu2.add(m2rouge);
MenuItem m2bleu = new MenuItem("texte bleu");
m2bleu.addActionListener(monDelegue);
menu2.add(m2bleu);
MenuItem m2vert = new MenuItem("texte vert");
m2vert.addActionListener(monDelegue);
menu2.add(m2vert);
MenuItem m2noir = new MenuItem("texte noir");
m2noir.addActionListener(monDelegue);
menu2.add(m2noir);
monLabel = new Label("Changer");
add(monLabel);
setVisible(true);
pack();
}
public void changeLabelFond (Color couleur) {
monLabel.setBackground(couleur);
}
public void changeLabelTexte (Color couleur) {
monLabel.setForeground(couleur);
}
}
|
Source de Delegue3.java
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
public class Delegue3
implements ActionListener {
private Prog48 monApplet;
public Delegue3(Prog48 app) {
monApplet = app;
}
public void actionPerformed(ActionEvent event) {
Color couleur= Color.white;
String nomDeMenuChoisi = event.getActionCommand();
if (nomDeMenuChoisi.indexOf("rouge")>=0)
couleur = Color.red;
else if (nomDeMenuChoisi.indexOf("bleu")>=0)
couleur = Color.blue;
else if (nomDeMenuChoisi.indexOf("vert")>=0)
couleur = Color.green;
else if (nomDeMenuChoisi.indexOf("noir")>=0)
couleur = Color.black;
if (nomDeMenuChoisi.indexOf("fond")>=0)
monApplet.changeLabelFond(couleur);
if (nomDeMenuChoisi.indexOf("texte")>=0)
monApplet.changeLabelTexte(couleur);
}
}
|
Source de Prog49.java
import java.awt.TextField;
import java.awt.Label;
import java.applet.Applet;
import java.awt.Color;
public class Prog49
extends Applet {
private TextField valeurR, valeurV, valeurB;
private Label monLabel;
public void init() {
monLabel = new Label("intensité couleur [0-255]");
add(monLabel);
Delegue4 monDelegue= new Delegue4(this);
add(new Label("R:"));
valeurR = new TextField("255",3);
add(valeurR);
valeurR.addActionListener(monDelegue);
add(new Label("V:"));
valeurV = new TextField("255",3);
add(valeurV);
valeurV.addActionListener(monDelegue);
add(new Label("B:"));
valeurB = new TextField("255",3);
add(valeurB);
valeurB.addActionListener(monDelegue);
}
private int convertir(String intensite) {
int val= (new Integer(intensite)).intValue();
if (val <0)
return 0;
else if (val >255)
return 255;
else
return val;
}
public void changeLabel () {
int r = convertir(valeurR.getText());
int v = convertir(valeurV.getText());
int b = convertir(valeurB.getText());
monLabel.setBackground(new Color(r,v,b));
}
}
|
Source de Delegue4.java
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Delegue4
implements ActionListener {
private Prog49 monApplet;
public Delegue4(Prog49 monApp) {
monApplet = monApp;
}
public void actionPerformed(ActionEvent event) {
monApplet.changeLabel();
}
}
|
Source de Prog71.java
import java.awt.Label;
import java.awt.Frame;
import java.awt.event.WindowListener;
import java.awt.event.WindowEvent;
import java.awt.FlowLayout;
public class Prog71
extends Frame
implements WindowListener {
public static void main(String args[])
{
new Prog71();
}
public Prog71() {
setTitle("Prog71");
setSize(200,100);
setLayout(new FlowLayout(FlowLayout.CENTER));
setVisible(true);
addWindowListener(this);
}
public void windowClosing(WindowEvent e) {
add(new Label("fini dans 5 secondes !"));
pack();
try {
Thread.sleep(5000);
} catch (InterruptedException ie) {
System.exit(1);
}
setVisible(false);
dispose();
System.exit(0);
}
public void windowOpened(WindowEvent e) {}
public void windowActivated(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
}
|
windowClosing
windowClosed
addWindowListener(this);
| composant | action | événement | interface d'écoute |
| Button, List, MenuItem, TextField, Checkbox | sélectionner,valider | ActionEvent | ActionListener |
| TextArea, TextField | changer le texte | TextEvent | TextListener |
| Frame | ouvrir, fermer, iconifier, ... | WindowEvent | WindowListener |
| Container | mouvement et clic de souris, frappe au clavier | MouseEvent, MouseMotionEvent, KeyEvent | MouseListener, MouseMotionListener, KeyListener |
Source de Prog72.java
import java.awt.Frame;
import java.awt.Dimension;
import java.awt.Label;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.FlowLayout;
public class Prog72
extends Frame {
public static void main(String args[])
{
new Prog72();
}
public Prog72() {
setTitle("Prog72");
setSize(200,100);
setLayout(new FlowLayout(FlowLayout.CENTER));
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
add(new Label("fini dans 5 secondes !"));
pack();
try {
Thread.sleep(5000);
} catch (InterruptedException ie) {
System.exit(1);
}
setVisible(false);
dispose();
System.exit(0);
}
public void windowDeiconified(WindowEvent e) {
Dimension dim=getSize();
setSize(dim.width, dim.height);
}
});
setVisible(true);
}
}
|
Source de EditerFichier.java
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class EditerFichier
extends Frame
implements ActionListener {
TextArea texte;
String messageFichier="Donnez ici un nom de fichier";
String messageTexte="Saisir le texte ici";
TextField champFichier;
public static void main(String[] args) {
new EditerFichier();
}
public EditerFichier() {
this.setTitle("Editer un Fichier");
texte= new TextArea(messageTexte, 20,50);
texte.setEditable(true);
this.add("Center",texte);
champFichier= new TextField(messageFichier,20);
this.add("South",champFichier);
MenuBar barreMenu= new MenuBar();
this.setMenuBar(barreMenu);
Menu menuFichier= new Menu("Fichier");
barreMenu.add(menuFichier);
MenuItem menuOuvrir= new MenuItem("Ouvrir");
menuOuvrir.addActionListener(this);
menuFichier.add(menuOuvrir);
MenuItem menuEnregistrer= new MenuItem("Enregistrer");
menuEnregistrer.addActionListener(this);
menuFichier.add(menuEnregistrer);
MenuItem menuQuitter= new MenuItem("Quitter");
menuQuitter.addActionListener(this);
menuFichier.add(menuQuitter);
this.pack();
this.setVisible(true);
}
public void actionPerformed (ActionEvent e) {
String menuSelectionne= e.getActionCommand();
if (menuSelectionne.equals("Quitter")) {
this.setVisible(false);
this.dispose();
System.exit(0);
}
else if (menuSelectionne.equals("Enregistrer")) {
if (!champFichier.getText().equals(messageFichier))
enregistrerFichier(champFichier.getText());
} else if (menuSelectionne.equals("Ouvrir"))
if (!champFichier.getText().equals(messageFichier))
chargerFichier(champFichier.getText());
}
public void chargerFichier(String nomFichier) {
Fichier fichier= new Fichier(nomFichier);
if (!fichier.lirePossible()) {
champFichier.setText(messageFichier);
return;
}
texte.setText("");
try {
FileReader flotLecture = new FileReader(fichier);
long longueurFichier= fichier.length();
int dejaLu = 0;
char car=0;
while (dejaLu < longueurFichier) {
car= (char)flotLecture.read();
dejaLu = dejaLu + 1;
texte.append(String.valueOf(car));
}
flotLecture.close();
} catch (IOException e) {
System.out.println(" erreur :" + e.toString());
}
}
public void enregistrerFichier(String nomFichier) {
Fichier fichier= new Fichier(nomFichier);
if (fichier.ecrirePossible()) {
try {
FileWriter flotEcriture = new FileWriter(fichier);
flotEcriture.write(texte.getText());
flotEcriture.close();
} catch (IOException e) {
System.out.println(" erreur :" + e.toString());
}
texte.setText(messageTexte);
}
champFichier.setText(messageFichier);
}
}
|