p. 5
TD n°7 : Concevoir l’aspect d’un IHM
Contenu : Utiliser les conteneurs, les composants et les gestionnaires de disposition. Plusieurs exemples simples
seront traités et associés in fine pour obtenir la disposition voulue sur le plateau de jeu.
Gestionnaires de disposition utilisés : FlowLayout (présentation en file)GridLayout (présentation en grille)
BorderLayout (présentation avec bordures)GridBagLayout (présentation en grille composite)Composants
utilisés : JButton, JLabelObjets graphiques : créer un panneau de dessin et dessinerimporter une image
Exercice 1 : Un premier IHM Durée 2H
1) Quelle est la fenêtre racine d’un IHM ? Quel est le conteneur racine associé à cette
fenêtre ? Quel est le gestionnaire d’agencement (layout manager) par défaut associé à ce
conteneur ? Rappeler par un dessin comment ce gestionnaire dispose les composants.
2) Créer une telle fenêtre racine que l’on appellera cadreglobal objet JFrame
Comment ferme-t-on « proprement » une fenêtre ?
3) Rappeler ce que vous savez de la classe JPanel.
4) Compléter cadreglobal en mettant à l’est un panneau « boiteBoutonsDéplacements »
(instance de JPanel), au sud un panneau « boiteBoutonsJeu » et au centre un panneau
« panneauDessin ».
Que constatez-vous si vous affichez l’interface ? Colorer ces panneaux en vert à l’estet en
rouge au sud, grâce à la méthode setBackground(Color.green)
5) Quelle est la classe SWING du composant bouton ? Quel est le gestionnaire d’agencement par défaut d’un objet
JPanel ?
Ajouter au panneau « boiteBoutonsDéplacements » 4
boutons (pour les déplacements dans les quatre directions
(àDroite, àGauche, enHaut, enBas).
Ajouter au panneau « boiteBoutonsJeu », 2 boutons
« Accélérer », « Ralentir ».
6) Quelle est la classe SWING du composant étiquette ? d’une
zone de saisie de texte ?
Ajouter au panneau « panneauDessin » le texte : « ceci sera ma zone de dessin »
En attendant de savoir dessiner…ajouter ensuite une zone de saisie de texte de 10 lignes et 20 colonnes.
Modifier la forme de la fenêtre que constate-t-on ? en particulier dans le panneau central ? Pourquoi ?
7) Modifier le gestionnaire d’agencement du panneau "est" de façon à
regrouper les 4 boutons 2 par 2 sur 2 lignes. Quel gestionnaire faut-il
choisir ? Quels inconvénients apparaissent ?
Quel autre gestionnaire choisir pour une meilleure disposition ?
Comparer les résultats. Faites des essais pour l’améliorer.
8) Dessiner l’arborescence des composants graphiques de cet interface