JList est un composant qui ** affiche un ensemble d'éléments ** sous forme de liste et permet à l'utilisateur de ** sélectionner un ou plusieurs ** éléments.
Ces éléments peuvent être de plusieurs natures, selon le besoin :
Pour créer une Jlist il faut créer en premier lieu une fenêtre. (** JFrame ** par exemple).
Les ** paramètres essentiels ** à considérer pour personnaliser sa JList (clic droit sur la Jlist > ** Properties **) sont :
public class MainWindow{ private DefaultListModel<String> listModel; }
public MainWindow() { initComponents(); listModel = new DefaultListModel(); }
listModel.addElement("élément x");
jList1.setmodel(listModel);
public class MainWindow{ private DefaultListModel<T> listModel; }
* ** Instancier ** le DefaultListModel dans le constructeur
public MainWindow() { initComponents(); listModel = new DefaultListModel(); }
// la classe T a ici un constructeur à 2 paramètres (String nom, String prénom) T t = new T("Le Brun","Titouan"); listModel.addElement(t);
jList1.setmodel(listModel);
La présentation des données dans la JList est ** textuelle **. Elle dépendra donc de la valeur renvoyée par la méthode ** toString ** appliquée aux objets de type T
Avec une Jlist on a la possibilité de ** récupérer ** l'élément sélectionné lorsqu'un utilisateur clique dessus grâce à la méthode ** getSelectedValue ** (libre au développeur d'utiliser les méthodes de l'objet pour obtenir ses caractéristiques propres).
T t = jList1.getSelectedValue(); System.out.println (t.getNom());
Note : dans le cas d'une sélection multiple, la méthode getSelectedValuesList() renvoie la Collection des Objets sélectionnés.