L'interface maître-détail
Une liste et le détail de l'élément choisi : la sélection comme lien, l'état sans sélection, l'édition avec enregistrer et annuler, la mise à jour de la liste, et la version à deux écrans sur téléphone.
- 22 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Mises en situation
- Comprendre
Quelques cartes du deck
Interface maître-détail : de quoi s'agit-il ?
Voir la réponse
Écran qui montre une liste d'éléments d'un côté et, de l'autre, les informations de celui que l'utilisateur a choisi.
Une messagerie ou un carnet de contacts en sont des exemples : la liste est le « maître », le panneau de lecture ou d'édition le « détail ».
Quand ce code lève-t-il une
NullPointerException?
```java
liste.getSelectionModel().selectedItemProperty().addListener((obs, ancien, nouveau) -> {
champNom.setText(nouveau.getNom());
});`- Quand la sélection est vidée :
nouveauvaut alorsnull - Au premier clic sur une ligne, quand
nouveaun'est pas encore initialisé - Quand l'utilisateur clique deux fois de suite sur la même ligne
- Quand la liste contient plus d'un élément
Voir la réponse
Quand la sélection est vidée :
nouveauvaut alorsnullQuand la sélection est effacée, la valeur
nouveaude l'écouteur estnull. Il faut traiter ce cas : testernouveau == nullet passer le détail à l'état vide.- Quand la sélection est vidée :
Dans un maître-détail, la … de la liste est le lien : le détail est relié à l'élément sélectionné, pas à la liste entière.
Voir la réponse
Dans un maître-détail, la sélection de la liste est le lien : le détail est relié à l'élément sélectionné, pas à la liste entière.
Liste et détail ne se connaissent pas ; ils partagent seulement la sélection. On peut remplacer l'un sans toucher l'autre.
Élément sélectionné : de quoi s'agit-il ?
Voir la réponse
Élément de la liste que l'utilisateur a désigné, ou absence d'élément lorsqu'il n'a rien désigné.
C'est l'unique lien entre la liste et le détail : le détail se relie à la sélection, pas à la liste. Elle peut être vide, il faut donc prévoir ce cas.
On supprime l'élément affiché, et le détail montre encore ses champs, qui renvoient une erreur à la modification. Quelles sont la cause et la solution ?
- La liste ne s'est pas rafraîchie ; il faut la recharger entièrement après chaque suppression
- Le bouton Supprimer devrait désactiver l'élément au lieu de le retirer de la liste affichée
- Les champs du détail devraient être en lecture seule en permanence
- Le détail n'est pas relié à la sélection ; il lui faut un état vide quand elle disparaît
Voir la réponse
Le détail n'est pas relié à la sélection ; il lui faut un état vide quand elle disparaît
Quand la sélection devient vide, le détail doit le savoir : il vide ou désactive ses champs et invite à choisir un élément. Recharger la liste ne changerait rien au détail resté sur l'ancien élément.