Académique Documents
Professionnel Documents
Culture Documents
Matériel :
Définition swing :
Exercice 1 :
Exercice 2 :
Exercice 3 :
Exercice 4 :
Objectif :
L’objectif de ce TP4 est la manipulation des interfaces graphiques « Swing »
Matériel :
- Eclipse.
Définition swing:
Swing est une bibliothèque graphique pour le langage de programmation Java, faisant partie du
package Java Fondation Classes, inclus dans J2SE. Swing constitue lune des principales
évolutions apportées par Java 2 par rapport aux versions antérieures.
Swing offre la possibilité de créer des interfaces graphiques identiques quel que soit le système
d’exploitation sous-jacent, au prix de performances moindres quen utilisant Abstract Window
Toolkit AWT. Il utilise le principe Modèle-Vue-Contrôleur MVC, les composants Swing jouent en
fait le rôle de la vue au sens du MVC et dispose de plusieurs choix d’apparence pour chacun des
composants standards.
Avec l’apparition de Java 8 en mars 2014, JavaFX devient la bibliothèque graphique officielle du
langage Java, pour toutes les sortes d’application, le développement de son prédécesseur Swing
étant abandonné sauf pour les corrections de bogues.
Exercice 1 :
Code source :
Enoncé :
Modifier le programme suivant pour que le label affiche le nombre d'appuis sur le bouton :
Exécution le code :
javax.swing.*, java.awt.*,java.awt.event.*.
• . On ajoute un compteur entier i qui a la valeur 0 à chaque clique sur le button , incrémente i
compteur j’utilise le c’est le dernier dans la méthode actionPerformed et affiche la valeur du
compteur sur le label.
• JFrame est une classe qui se trouve dans le package javax.swing qui hérite de java.awt.frame,
il ajoute la prise en charge de l’architecture des composants SWING.
• JButton pour déclarer les button.
• JLabel pour déclarer les Label
• frame.getContentPane().add(pane,BorderLayout.CENTER);. Comme le montre le code,
vous trouvez le volet de contenu d’un conteneur de niveau supérieur en appelant la méthode
getContentPane. Le volet de contenu par défaut est un conteneur intermédiaire simple qui
hérite de JComponent et qui utilise un BorderLayout comme gestionnaire de mise en page.
Exercice 2 :
Modifier le programme précédent afin qu'un bouton incrémente le compteur et qu'un autre bouton
le décrémente.
Exécution le code :
Et modifie le code de la méthode actionPerformed pour que tester si button est cliquée il
incrémente compteur et afficher sa valeur sur label sinon si button2 est cliquée il décrémente
compteur et afficher sa valeur sur label.
Exercice 3 :
1) Trouvez comment réagir à la sélection d'un item du menu.
Exécution le code :
On doit créer une menuBar les menus : menu et submenu puis créer les éléments des menus.
• JMenuBar est un ensemble d’options qui permettent à l’utilisateur de choisir parmi l’une des
options d’enregistrement.
• JMenu class représente le menu qui peut être attaché à une JMenuBar de menus ou à un
autre menu
• On ajouter les éléments des menus sur le menu et submenu, on séparer les éléments et le
submenu par un séparateur et on ajoute le menu à la menuBar puis on ajoute le menuBar
sur le frame.
• Pour réagir à la sélection d’un item du menu on doit ajouter un écouteur sur chaque item.
2) Modifier l'exemple précédent pour qu'un label de la fenêtre affiche le dernier item sélectionné.
Exécution le code :
jtextArea.append(((JMenuItem)event.getSource()).getText() + "\n");
On doit ajouter un jtextArea et modifier la méthode actionPerformed pour que à chaque clique on
ajoute l’item sélectionné grâce à append
Exercice 4 :
Exécution le code :
resultant
Résultat
J’ai ajouté juste un JWindow et un écouteur de window au niveau du frame pour la fermeture du
window si on ferme le frame.
window.setVisible(true);
window.setSize(200,200);
window.setLocation(400,0);
window.add(textArea2);
textArea2.setEditable(false);
frame.setJMenuBar(menuBar);
frame.setSize(200,200);
Pour gérer la visibilité, la taille et la position du window . Puis on ajoute la zone du texte au window.
La méthode actionPerfromed de la classe ActionListner nous a permis d’ajouter le texte qui a en la
zone du texte du frame à la zone du texte du window si on clique sur button envoyer du frame.
La méthode windowClosing de la classe windowsListner pour fermer le window si le frame est fermé