Université Sidi Mohamed Ben Abdellah Cours : Programmation JAVA
École Supérieure de Technologie de Fès Année Universitaire : 2023/2024
Département Informatique
T.P 3 SWING
Exercice 1 :
Modifier le programme suivant pour que le label affiche le nombre
d'appuis sur le bouton.
import [Link].*;
import [Link].*;
import [Link].*;
public class Ex1 {
private JLabel label;
public Ex1() {
JFrame frame = new JFrame("exemple");
JButton button = new JButton("clic clic");
[Link](new MyActionListener());
label = new JLabel("0");
JPanel pane = new JPanel();
[Link](button);
[Link](label);
[Link]().add(pane,
[Link]);
[Link]();
}
private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
//…
}
}
public static void main(String[] args) {
new Ex1();
}
}
Remarque : on peut modifier le texte d'un label avec
[Link](”...”)
[Link] Page 1
Université Sidi Mohamed Ben Abdellah Cours : Programmation JAVA
École Supérieure de Technologie de Fès Année Universitaire : 2023/2024
Département Informatique
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.
Exercice 3 :
1) Trouvez comment réagir à la sélection d'un item du menu.
2) Modifier l'exemple précédent pour qu'un label de la fenêtre affiche
le dernier item sélectionné.
3) Modifier à nouveau votre programme en remplaçant le label par
une zone de texte qui affiche l'historique des sélections des items.
Remarque :
- il vous faudra regarder la documentation de JMenuItem notamment.
- pour le point 3, il vous faudra regarder JTextArea.
Exercice 4 :
Il s'agit de créer un programme qui possède une fenêtre principale où
l'on tape du texte, et une fenêtre secondaire où le texte est envoyé,
ligne par ligne.
[Link] Page 2
Université Sidi Mohamed Ben Abdellah Cours : Programmation JAVA
École Supérieure de Technologie de Fès Année Universitaire : 2023/2024
Département Informatique
La fenêtre principale contiendra une zone de texte éditable où
l'utilisateur tapera la ligne à envoyer, ainsi qu'un bouton d'envoi.
Elle permettra aussi de fermer le programme.
La fenêtre secondaire ne possèdera pas de barre de menu (regarder
JWindow). Elle contiendra une zone de texte non éditable où le texte
reçu sera écrit.
Remarque :
- pour régler la taille de la fenêtre : setSize(200, 200)
- pour positionner la fenêtre : setLocation(400, 0)
- pour créer un panel scrollable : scroll = new
JScrollPane(panel); [Link](scroll);
[Link] Page 3