1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
public class Fenetre extends JFrame implements ActionListener, ComponentListener
{
//les données et leur gestion
private GestionDonnees gd;
//la liste pour mélanger les oiseaux
private ListeAMelanger lam;
//le numéro de la bonne réponse, le nombre de bonnes réponses et de questions
private int bonneReponse, nbBonnesReponses, nbQuestions;
//le nombre de réponses possibles
private int nbBoutons = 10;
//Les dimensions minimales de la JFrame
private static int largeurMin, hauteurMin;
//la dimension des images
private int largeurImage = 250;
//Le texte d'informations (aide)
private String informations = "";
//Les composants
private JPanel gauche,bas,centre;
private Box droite, fenetre;
//un panneau pour le lecteur
private JLecteurMP3 lecteur;
//une image d'oiseau et son chant en introduction
private Cartouche cartouche;
//les boutons de réponse
private JButton[] boutons;
//les boutons d'actions
private JButton lancer, stop, langue, rejoue, aide, sonotheque, galerie;
//un FlowLayout
private FlowLayout fl = new FlowLayout();
public Fenetre()
{
//initialisation des paramètres
gd = new GestionDonnees();
lam = new ListeAMelanger(gd.getNbDonnees());
lecteur = new JLecteurMP3();
//les dimensions des composants
.../...
//les composants en commençant par les plus intérieurs
.../....
//le cartouche dans le panneau central au démarrage
//au démarrage, on affiche un cartouche d'oiseau et on entend son chant
lam.melanger();
int n = lam.getElement(0);
ImageChant imageChant = new ImageChant(gd.getNom(0),gd.getFichierSon(0),gd.getFichierImage(0), largeurImage);
//les boutons portant le nom d'un oiseau dans le panneau droit (invisible au démarrage)
.../...
//les boutons d'actions (non focusables)
//lancer le programme
lancer = new JButton("Lancement");
lancer.addActionListener (this);
lancer.setFocusable(false);
lancer.setToolTipText("lancement du jeu");
//les autres boutons
.../...
//l'installation des composants dans la fenêtre
.../...
//le panneau central qui contient gauche et droite
//invisibles au démarrage et une image d'oiseau
centre = new JPanel(fl);
centre.setPreferredSize(new Dimension(largeurCentre, hauteurCentre));
centre.add(gauche);
centre.add(droite);
centre.add(imageChant);
//le panneau du bas qui contient les boutons d'action
bas = new JPanel(fl);
bas.setPreferredSize(new Dimension(largeurBas,hauteurBas));
bas.add (lancer);
.../...
//La fenêtre
fenetre = new Box(BoxLayout.Y_AXIS);
fenetre.setPreferredSize(new Dimension(largeurFenetre,hauteurFenetre));
fenetre.add (centre);
fenetre.add (bas);
//le JFrame
getContentPane().setLayout (new GridBagLayout()) ;
getContentPane ().add(fenetre);
//le titre
setTitle("Programme de mémorisation des chants d'oiseau") ;
setSize(largeurMin,hauteurMin);
setLocationRelativeTo(null);
//fermeture du programme
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//rendre la fenetre visible
setVisible(true);
lecteur.enBoucle(true);
lecteur.joue(gd.getFichierSon(0));
}
//méthodes de ActionListener et ComponentListener
//méthodes liées au clic sur un des boutons
} |
Partager