import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
// Deux nouveautés ici:
// 1 : Création d'une fenêtre SANS appletviewer (application)
// 2 : Créations de boutons
class ReactionButton implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.out.println("bouton!");
}
}
public class ExempleBoutonsCorrige extends JApplet
{
ReactionButton reactionButton=new ReactionButton();
// comme d'habitude, la fonction init ...
// (mais cette fois c'est nous qui allons l'appeler directement)
public void init()
{
// demander a l'applet ou est-ce qu'on peut ajouter des
// éléments graphiques
Container cp = getContentPane();
// type rangement pour les boutons qui vont être crées
cp.setLayout(new FlowLayout());
// creation de 2 bouttons
JButton b1 = new JButton("Bouton 1");
JButton b2 = new JButton("Bouton 2");
// ajout des deux bouttons a la fenetre
cp.add(b1);
cp.add(b2);
b1.addActionListener(reactionButton);
}
// Cette fois il y a un "main" dans un Applet!!
public static void main(String[] args)
{
// ici on fait une partie des choses qui se
// passaient automatiquement lorsqu'on lance appletviewer
// on crée l'objet de type JApplet
JApplet applet = new ExempleBoutonsCorrige();
// on crée une fenêtre principale
JFrame frame = new JFrame("Titre de la fenetre");
// Pour fermer l'application
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// on ajoute notre affichage dans la fenêtre principale
frame.getContentPane().add(applet);
// taille de la fenêtre principale
frame.setSize(200,200);
// appel de notre méthode d'initialisation
applet.init();
// démarrage de notre application
applet.start();
// apparition de la fenêtre a l'écran
frame.setVisible(true);
}
}