Vous êtes sur la page 1sur 15

UNIVERSITE SIDI MOHAMMED BEN ABDELLAH

ECOLE SUPERIEURE DE TECHNOLOGIE


FILIERE GENIE INFORMATIQUE
DEPRATEMENT INFORMATIQUE

Compte Rendu TP3 de la


programmation JAVA
Réaliser par Encadrée
par
Zakaria Aliti Benslimane Mohammed

Année universitaire 2021/2022


SWING

Table des matières


Objectif :

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 :

Exécution code source

Enoncé :

Modifier le programme suivant pour que le label affiche le nombre d'appuis sur le bouton :
Exécution le code :

Premier cliquer Resulta


• J’ai importé les classes :

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 :

On crée une nouvelle button et l’ajouter dans pane.

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 :

Définir une variable JMenuItem i1, i2, i3, i4,i5;

label.setText(((JMenuItem)event.getSource()).getText()); Pour afficher le dernier item sélectionné on


utilise à l’intérieur du bloc de la méthode actionPerformed.
3) Modifier à nouveau votre programme en remplaçant le label par une zone de texte qui affiche
l'historique des sélections des items.
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é

Vous aimerez peut-être aussi