0% ont trouvé ce document utile (0 vote)
122 vues4 pages

IHM Java : TP1 sur Clubs Étudiants

Transféré par

HAMZA LOUATI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • JTextField,
  • exercice pratique,
  • Tomuss,
  • API,
  • gestionnaire de placement,
  • GridLayout,
  • projet Java,
  • saisie,
  • cadrage,
  • remarques sur Tomuss
0% ont trouvé ce document utile (0 vote)
122 vues4 pages

IHM Java : TP1 sur Clubs Étudiants

Transféré par

HAMZA LOUATI
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • JTextField,
  • exercice pratique,
  • Tomuss,
  • API,
  • gestionnaire de placement,
  • GridLayout,
  • projet Java,
  • saisie,
  • cadrage,
  • remarques sur Tomuss

Programmation IHM en Java TP1 - Fenêtre Clubs Etudiants

L’objectif du TP est de programmer une interface à la main, sans l’aide de l’IDE. DANS CE 1er
TP, ON NE GÈRERA PAS LES EVENEMENTS (ex. CLICs SUR LES BOUTONS).
On imagine créer une interface pour la saisie, en début d’année, des préférences en termes
de loisirs des étudiants, afin de constituer des clubs qui pourraient fonctionner toute l’année
au département.

Vous allez développer une interface composée d’une fenêtre (JFrame) avec :
- 7 JLabel 2 JRadioButton, - 1 JTextArea
exclusif - 3 JButton
- 5 ComboBox
- 4 JCheckBox, à choix
- 2 JTextField multiple

1
Partie 1

1. Commencer par définir un nouveau projet (Java application), et spécifier dans


le code créé que la classe hérite de JFrame.
Que dit l’IDE ? Classe non définie ? Il faut importer les classes inconnues
(clic droit : import xxx). Observez dans quel package JAVA se trouve l’API
Swing.
2. Déclarer tous les composants nécessaires, sans les instancier pour l’instant (les
composants sont mentionnés sur la fenêtre proposée p.1). Utiliser des noms
suffisamment parlant.
3. Créer le constructeur qui appelle la méthode initComponents() et définit le
comportement de la fenêtre à sa fermeture.
4. Créer le main(), instancier une fenêtre, définir sa taille optimale (méthode
pack()) et la rendre visible.
5. Ecrire la méthode privée initComponents() qui va instancier tous ces
composants. Pour l’image, créer un label à partir d’une instance
d’ImageIcon comme expliqué en cours. Regarder la Javadoc pour voir
comment se définit la ComboBox, la JTextArea. Expliquez dans le CR.
6. Dans initComponents(), récupérer le contentPane de la fenêtre
principale.
7. Définir le layout au niveau du conteneur « implicite » de la fenêtre. Dans cet
exemple, on a choisi d’utiliser un GridLayout avec 5 lignes et 1 colonne, dans
lequel on va ajouter 5 panneaux. Ici chaque ligne est un panneau composé : un
pour l’image et la comboBox de l’état civil ; un pour Nom, Année, Préférences
; un pour les loisirs et leur niveau, etc. le dernier étant composé des 3 boutons
du bas.
Vous pouvez aussi procéder différemment : considérer 8 lignes par exemple, le
rendu sera différent : à vous de choisir selon ce que vous souhaitez.
8. Définir ensuite chacun des panneaux, qui sont des JPanel, en ajoutant les
composants dans le bon ordre. Par exemple pour la 1ère ligne :
pannEtatCivil = new JPanel();
[Link](lbl_etatCivil);
[Link](cbb_etatCivil);

9. Ajouter ensuite les panneaux au conteneur de la fenêtre, et testez votre code.


Voyez-vous des différences avec la fenêtre proposée en page 1 ?

Partie 2
On veut maintenant utiliser un FlowLayout avec cadrage à gauche. Vous pouvez
utiliser le même layout comme gestionnaire de placement pour les panneaux
concernés :
2
LayoutManager monLayout=new FlowLayout([Link]);

3
Ce qui nous permet de définir le panneau pour l’année, les préférences et les
niveaux ainsi que le pannCommentaire en utilisant notre FlowLayout cadré à
gauche :
pannCommentaire = new JPanel(monLayout);

Modifiez votre code en utilisant ce layout là où c’est nécessaire pour obtenir la


fenêtre proposée ou une plus jolie.

Partie 3
1- Pré cocher une réponse par défaut pour l’année (1A)
2- Faire qu’on puisse modifier le titre de la fenêtre à son lancement. Indice :
nouveau constructeur.
3- Permettre de saisir un autre club que ceux prédéfinis (ajout
d’un textField) :

Remarque : commentez pertinemment les différentes parties de votre code, au fur et à


mesure du codage pour ne pas perdre de temps.

Utiliser la forge de Lyon1 (GITLab) pour stocker votre code source et éviter toute perte
de code.

Travail à rendre

Déposer votre TP (réponses aux 2 questions en commentaires) sur Tomuss dans les
colonnes mentionnées (un dépôt par colonne).
En cas de problème écrire à [Link]@[Link]

Remarques sur Tomuss :


 Vous pouvez récupérer ce que vous avez déjà déposé.
 On ne peut pas effacer de fichier
 Vous pouvez redéposer un fichier, cela remplace l’ancien.

Vous aimerez peut-être aussi