import java.applet.*;
import java.awt.*;
import java.net.*;
public class Joue extends Applet {
AudioClip sound;
public void init() {
try {
URL url = new URL(getCodeBase(), "bach1.au");
sound = getAudioClip(url);
} catch (MalformedURLException probleme) { }
}
public void start() {
sound.play();
}
public void paint(Graphics g) {
g.drawString("Fenetre de l'applet", 10, 20);
g.drawString("ceci est le debut de l'Invention 1 de Bach", 10, 40);
}
}
Ce fichier définit une classe Joue (dont le nom doit être identique au nom du fichier Joue.java). Au chargement de l'applet correspondante dans un navigateur, les trois méthodes initi, start et paint sont invoquées. La méthode init charge le fichier musical bach1.au dans un objet de la classe AudioClip. L'adresse du fichier (au même niveau que le fichier de l'applet) est donnée par getCodeBase(). Elle peut être locale sur le disque de l'ordinateur. Le chargement du fichier nécessite la gestion d'une exception (pour prévenir les problèmes de fichier non trouvé, de mémoire saturée, etc.), d'où la construction try { } catch { }.
La méthode start déclenche play qui joue le fichier.
La méthode paint affiche du texte dans la fenêtre de l'applet (dont les dimensions sont définies dans la page Web), en positions horizontale et verticale calculées à partir du coin supérieur gauche.
L'applet est obtenue en compilant le code ci-dessus avec javac. Le résultat est un fichier Joue.class qu'on appelle dans la page Web avec la commande <APPLET CODE="Joue.class" WIDTH=200 HEIGHT=50>, en indiquant que la fenêtre de l'applet occupe dans la page Web un rectangle de largeur 200 et de hauteur 50.
<HTML> <HEAD> <TITLE>Marc Chemillier - Projets Licence-Maîtrise/TITLE> </HEAD> <BODY> <BODY> <H1>Applet jouant un fragment de Bach</H1> Le fichier son est "bach1.au". La fenêtre de l'applet a 200 de largeur et 50 de hauteur. <p> <APPLET CODE="Joue.class" WIDTH=200 HEIGHT=50> </APPLET> </BODY> </HTML>Autres exemples :