II. Applettes
II.1 Concept
pas une application indépendante, mais dépend d'une page html
s'exécute automatiquement au chargement de la page
CORE : indépendant du système d'exploitation
restrictions de sécurité : heureusement !
il existe appletviewer
II.2 Classe (java.applet.Applet, javax.swing.JApplet)
extends JApplet extends Applet extends Panel => this.add( composant graphique );
II.3 Fichier html : exemple
Obligatoire pour le lancement, BlueJ le crée automatiquement
II.4 Méthodes
L'indispensable : init()
Les autres méthodes du cycle de vie : start(), stop(), et destroy()
Récupération des paramètres : getParameter( stringNomParametre ) Attention : peut être nul !
II.5 Classes anonymes :
SuperClasseAbstraite obj = new SuperClasseAbstraite() { méthodes à redéfinir }; OU
UneInterface obj = new UneInterface() { méthodes à implémenter }
II.6 Gestion d'évènements :
interface ActionListener => méthode void actionPerformed( ActionEvent pAE ); par exemple
pour réagir aux clics sur des boutons
package java.awt.event
3 ways to addActionListener() :
bouton1.addActionListener(this); et bouton2.addActionListener(this); et définir dans la
classe courante
public void actionPerformed( ActionEvent pAE ) {
if (pAE.getActionCommand().equals(texteBouton1)) action1;
else if (pAE.getActionCommand().equals(texteBouton2)) action2;
else ... }
1.
bouton1.addActionListener(bouton1Listener); et
bouton2.addActionListener(bouton2Listener); et définir 2 classes Bouton1Listener et
Bouton2Listener contenant chacune :
public void actionPerformed( ActionEvent pAE ) { action; }
2.
bouton1.addActionListener( new ActionListener(){ public void actionPerformed(
ActionEvent pAE ) { action1; } } );
et idem pour bouton2
3.
interface MouseListener => addMouseListener(...) et méthodes mouseClicked( MouseEvent pME ),
mouseEntered( MouseEvent pME ), mouseExited( MouseEvent pME ), mousePressed( MouseEvent
pME ), et mouseReleased( MouseEvent pME ).
interface KeyListener => addKeyListener(...) et méthodes keyPressed( KeyEvent pKE ),
keyReleased( KeyEvent pKE ), et keyTyped( KeyEvent pKE ).
interface WindowListener => addWindowListener(...) et méthodes windowClosing( WindowEvent
pWE ), et beaucoup d'autres ...
Les objets des classes ActionEvent, MouseEvent, KeyEvent et WindowEvent contiennent beaucoup
d'informations sur l'évènement concerné.
Pour ne pas avoir à tout récrire, étendre les classes abstraites MouseAdapter, KeyAdapter et
WindowAdapter.
II.7 Les gestionnaires de disposition
this.setLayout( new XLayout() ); où X peut être Border, Grid, Flow, Card, GridBag, Group, Box, etc...
Lire le poly :
tout jusqu'à la section 2.2, sections 3.1, 4, 5.2.0, 6,
7.1, 7.2, 8.1, 8.2.1.1, et annexes 6 & 7 (à compléter)
3 sur 3 http://www.esiee.fr/~bureaud/Unites/In101/Co... 11/05/2010 00:13