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); } } |