Avant de commencer, vous devez terminer .
Dans cet exercice, vous allez utiliser l'éditeur visuel Java pour ajouter un ScrollPane et une JTable à l'application. Dans des exercices ultérieurs, vous allez programmer la JTable pour extraire ses données d'un service Web qui renvoie une liste de tous les employés de l'annuaire de la société. Après avoir ajouté la JTable, utilisez la vue Conception de l'éditeur visuel Java pour
personnaliser la disposition de la JTable conformément aux spécifications suivantes :
- Etendez la JTable à trois cellules horizontalement et deux cellules verticalement
- Ajoutez un encart de gauche de 15 pixels
- Renommez la JTable en employeesTable.
Ouverture du fichier DirectoryApp.java dans l'éditeur visuel Java :
Pour ouvrir le fichier DirectoryApp.java dans l'éditeur visuel Java, procédez comme
suit :
- Dans la vue Explorateur de package de la perspective Java, développez le projet MyDirectory et le package directory.client.
- Cliquez à l'aide du bouton droit de la souris sur le fichier DirectoryApp.java et sélectionnez Ouvrir avec > Editeur visuel.
L'éditeur visuel Java charge la classe Java et affiche la conception dans la zone
graphique du canevas.
Préférences :
- Pour modifier la présentation utilisée par l'éditeur visuel Java, accédez à
Fenêtre > Préférences > Java > Visual Editor et spécifiez une
présentation Swing. La nouvelle préférence prend effet dès la prochaine ouverture de la
classe. Le présent tutoriel utilise la présentation Windows.
- Pour que l'éditeur visuel soit l'éditeur par défaut de tous les
fichiers Java, vous pouvez cliquer sur Fenêtre > Préférences et accéder à la
page Plan de travail > Associations de fichiers pour définir votre préférence.
Ajout d'une JTable sur un JScrollPane :
La fenêtre principale de DirectoryApp.java utilise un JFrame doté d'un JPanel pour son panneau de contenu principal. Le JPanel de notre application est intitulé jContentPane. Le jContentPane a été configuré pour l'utilisation d'un type de gestionnaire de mise en page appelé GridBagLayout. Le GridBagLayout est un schéma de mise en page puissant basé sur une grille de cellules qui peut être occupée par des composants visuels. Pour faciliter l'utilisation de GridBagLayout, l'éditeur visuel java affiche les bordures de grille. Il affiche également des marqueurs de positionnement lorsque de nouveaux composants sont
placés sur la grille, ainsi que des indicateurs sur les composants que vous
redimensionnez ou déplacez dans le composant GridBagLayout.
Pour ajouter la table des employés (javax.swing.JTable) à l'interface utilisateur
DirectoryApp.java, procédez comme suit :
- Cliquez à l'aide du bouton droit de la souris sur le jContentPane dans la vue Conception ou dans la vue Beans Java, puis sélectionnez Afficher la grille. Un trait pointillé rouge affiche la bordure de la grille et des cercles numérotés de
couleur bleue indiquent les numéros de ligne et de colonne. Par exemple, notez que le
bouton Nouveau occupe la cellule à la ligne 1 (grille y) et la colonne 3 (grille
x).

- Dans la palette de l'éditeur visuel Java, sélectionnez le composant Swing JTable
dans JScrollPane
, qui est
classé sous le tiroir Composants Swing de la palette.Conseil : Par défaut, la palette est réduite dans la partie droite de la zone
de conception. Vous pouvez la redimensionner et la déplacer.
- Placez le curseur de la souris sur la cellule de la colonne 0 et de la ligne 1 de
la grille :

- Lors du déplacement du pointeur de la souris sur la grille, le pointeur affiche
deux carrés numérotés qui indiquent les coordonnées x et y de la grille en fonction de
l'emplacement du pointeur.
- Si le pointeur est placé directement sur une bordure de grille, il se peut que de
nouvelles lignes et colonnes soient créées ; les lignes et colonnes existantes sont donc
renumérotées. Dans ce cas, des carrés jaunes sur le pointeur, des barres jaunes entre les
grilles et des intitulés de colonnes et de lignes jaunes indiquent ce comportement et
désignent l'impact du positionnement.
- Appuyez sur le bouton gauche de la souris pour insérer JScrollPane et JTable dans
la cellule de la colonne 0 et la ligne 1 :

Englobez JScrollPane et JTable sur plusieurs colonnes et lignes de la grille
A présent, nous voulons que JScrollPane (et sa JTable enfant) englobent trois colonnes
et deux lignes pour améliorer l'espacement et le redimensionnement. Pour que la table
soit étendue aux colonnes et aux lignes, procédez comme suit :
- Sélectionnez JScrollPane dans la zone de conception ou la vue Beans Java (elle
doit être toujours sélectionnée car vous venez de l'ajouter). Notez les petits carrés verts dans la partie inférieure droite du JScrollPane. Vous allez utiliser ces indicateurs de redimensionnement pour faire glisser le JScrollPane afin d'englober plusieurs colonnes et lignes.
- Tout en maintenant le bouton gauche de la souris enfoncé, cliquez sur l'indicateur vert qui
se trouve à droite du JScrollPane.
- Faites glisser le pointeur de la souris vers la droite jusqu'à ce que le positionnement du
curseur indique colonne 2, ligne 1. Un ombrage gris foncé indique également les cellules
que le composant va occuper lorsque vous relâchez le bouton de la souris.

- Relâchez le bouton de la souris. Le JScrollPane englobe désormais trois colonnes.
- Répétez le même processus pour faire glisser l'indicateur inférieur du JScrollPane
jusqu'à ce que ce dernier englobe la ligne 2 :

Personnalisation de l'espacement du JScrollPane dans le sachet de la grille
Le gestionnaire GridBagLayout permet également de définir diverses contraintes pour
personnaliser encore plus la disposition. Vous pouvez par exemple spécifier les
contraintes suivantes :
- ancre : une orientation de type ancre peut être donnée à un composant dans sa
cellule, ce qui a une incidence sur la façon dont le composant se déplace lorsque
l'application est redimensionnée par un utilisateur. Par exemple, un composant peut être ancré dans la partie supérieure gauche, dans la partie centrale gauche, au centre ou dans la partie inférieure droite.
- remplissage : un composant peut occuper tous les espaces disponibles dans sa ou ses
cellules horizontalement et/ou verticalement.
- encarts : un composant peut obtenir son propre remplissage en haut, en bas, à gauche
et à droite afin d'assurer un espacement entre lui-même et le bord de la grille.
Pour personnaliser l'ancre, le remplissage et les encarts du JScrollPane, procédez
comme suit :
- Cliquez à l'aide du bouton droit de la souris sur le JScrollPane dans la vue Conception ou dans la vue Beans Java, puis sélectionnez Personnaliser la disposition.

Conseil : La boîte de dialogue de personnalisation de la présentation peut rester ouverte lorsque vous
sélectionnez la disposition et la modifiez pour différents composants. Vous pouvez
ouvrir cette boîte de dialogue à tout moment en cliquant sur le bouton Personnaliser la
présentation de la barre de menus :

- Dans l'onglet Composant de la boîte de dialogue de personnalisation de la
présentation, vérifiez que le bouton Ancre centre est actionné.
- Assurez-vous que les deux boutons Remplissage horizontal et Remplissage
vertical sont actionnés.
- Ajoutez un encart de gauche de 15 (pixels) pour que l'espacement vers
la gauche du JScrollPane soit similaire aux autres composants visuels de l'application.

Par exemple, la table est maintenant alignée avec le libellé Filtre.

Renommez la nouvelle JTable à l'aide d'une valeur utile, puis définissez-la pour sélectionner
une ligne unique :
Dans la mesure où vous allez utiliser la table ultérieurement, il est
nécessaire de renommer l'instance JTable et la méthode getter qui lui est associée. Pour
renommer la table, procédez comme suit :
- Dans la vue Beans Java, cliquez à l'aide du bouton droit de la souris sur le
composant jTable et sélectionnez Renommer la zone dans le menu en
incrustation.

- Entrez employeesTable et cliquez sur OK. La JTable est désormais intitulée employeesTable et la méthode qui permet de l'instancier est getEmployeesTable.
Pour définir la table de sorte qu'elle autorise la sélection d'une ligne unique :
- Sélectionnez employeesTable dans la vue de conception.
- Dans la vue Propriétés, sélectionnez la propriété selectionMode et paramétrez-la sur SINGLE_SELECTION.

- Sauvegardez le fichier DirectoryApp.java.
A présent, vous êtes prêt à commencer .