Java Swing | JListe avec des exemples
JList fait partie du package Java Swing. JList est un composant qui affiche un ensemble d'objets et permet à l'utilisateur de sélectionner un ou plusieurs éléments. JList hérite de la classe JComponent. JList est un moyen simple d'afficher un tableau de Vectors .
Les constructeurs pour JList sont :
- JList() : crée une liste vide JList(E [ ] l) : crée une nouvelle liste avec les éléments du tableau. JList(ListModel d) : crée une nouvelle liste avec le modèle de liste spécifié JList(Vector l) : crée une nouvelle liste avec les éléments du vecteur
Les méthodes couramment utilisées sont :
| méthode | explication |
|---|---|
| getSelectedIndex() | renvoie l'index de l'élément sélectionné de la liste |
| getSelectedValue() | renvoie la valeur sélectionnée de l'élément de la liste |
| setSelectedIndex(int i) | définit l'index sélectionné de la liste sur i |
| setSelectionBackground (Couleur c) | définit la couleur d'arrière-plan de la liste |
| setSelectionForeground (Couleur c) | Change la couleur de premier plan de la liste |
| setListeDonnées(E [ ] l) | Remplace les éléments de la liste par les éléments de l . |
| setVisibleRowCount(int v) | Modifie la propriété visibleRowCount |
| setSelectedValue (Objet a, booléen s) | sélectionne l'objet spécifié dans la liste. |
| setSelectedIndices(int[] i) | modifie la sélection pour qu'elle soit l'ensemble d'indices spécifié par le tableau donné. |
| setListData (Vecteur l) | construit un ListModel en lecture seule à partir d'un vecteur spécifié. |
| setLayoutOrientation(int l) | définit l'orientation de la liste |
| setFixedCellWidth (int w) | Modifie la largeur des cellules de la liste par la valeur passée en paramètre. |
| setFixedCellHeight (int h) | Modifie la hauteur des cellules de la liste par la valeur passée en paramètre. |
| estSelectedIndex(int i) | renvoie vrai si l'index spécifié est sélectionné, sinon faux. |
| indexVersLocation(int i) | renvoie l'origine de l'élément spécifié dans le système de coordonnées de la liste. |
| getToolTipText (MouseEvent e) | renvoie le texte de l'info-bulle à utiliser pour l'événement donné. |
| getSelectedValuesList() | renvoie une liste de tous les éléments sélectionnés. |
| getSelectedIndices() | renvoie un tableau de tous les indices sélectionnés, par ordre croissant |
| getMinSelectionIndex() | renvoie le plus petit index de cellule sélectionnée, ou -1 si la sélection est vide. |
| getMaxSelectionIndex() | renvoie le plus grand index de cellule sélectionnée, ou -1 si la sélection est vide. |
| getListSelectionListeners() | renvoie les auditeurs de la liste |
| getLastVisibleIndex() | renvoie le plus grand index de liste actuellement visible. |
| getDragEnabled() | indique si la gestion automatique du glissement est activée ou non |
| addListSelectionListener(ListSelectionListener l) | ajoute un listSelectionlistener à la liste |
Les programmes suivants illustreront l'utilisation des JLists
1. Programme pour créer une JList simple
Java
// java Program to create a simple JList> import> java.awt.event.*;> import> java.awt.*;> import> javax.swing.*;> class> solve> extends> JFrame> {> > > //frame> > static> JFrame f;> > > //lists> > static> JList b;> > > //main class> > public> static> void> main(String[] args)> > {> > //create a new frame> > f => new> JFrame(> 'frame'> );> > > //create a object> > solve s=> new> solve();> > > //create a panel> > JPanel p => new> JPanel();> > > //create a new label> > JLabel l=> new> JLabel(> 'select the day of the week'> );> > //String array to store weekdays> > String week[]= {> 'Monday'> ,> 'Tuesday'> ,> 'Wednesday'> ,> > 'Thursday'> ,> 'Friday'> ,> 'Saturday'> ,> 'Sunday'> };> > > //create list> > b=> new> JList(week);> > > //set a selected index> > b.setSelectedIndex(> 2> );> > > //add list to panel> > p.add(b);> > > f.add(p);> > > //set the size of frame> > f.setSize(> 400> ,> 400> );> > > f.show();> > }> > > }> |
Sortir :
2. Programme pour créer une liste et y ajouter itemListener (programme pour sélectionner votre anniversaire à l'aide de listes) .
Java
// java Program to create a list and add itemListener to it> // (program to select your birthday using lists) .> import> javax.swing.event.*;> import> java.awt.*;> import> javax.swing.*;> class> solve> extends> JFrame> implements> ListSelectionListener> {> > > //frame> > static> JFrame f;> > > //lists> > static> JList b,b1,b2;> > > //label> > static> JLabel l1;> > > //main class> > public> static> void> main(String[] args)> > {> > //create a new frame> > f => new> JFrame(> 'frame'> );> > > //create a object> > solve s=> new> solve();> > > //create a panel> > JPanel p => new> JPanel();> > > //create a new label> > JLabel l=> new> JLabel(> 'select your birthday'> );> > l1=> new> JLabel();> > //String array to store weekdays> > String month[]= {> 'January'> ,> 'February'> ,> 'March'> ,> > 'April'> ,> 'May'> ,> 'June'> ,> 'July'> ,> 'August'> ,> > 'September'> ,> 'October'> ,> 'November'> ,> 'December'> };> > > //create a array for months and year> > String date[]=> new> String[> 31> ],year[]=> new> String[> 31> ];> > > //add month number and year to list> > for> (> int> i=> 0> ;i <> 31> ;i++)> > {> > date[i]=> ''> +(> int> )(i+> 1> );> > year[i]=> ''> +(> int> )(> 2018> -i);> > }> > > //create lists> > b=> new> JList(date);> > b1=> new> JList(month);> > b2=> new> JList(year);> > > //set a selected index> > b.setSelectedIndex(> 2> );> > b1.setSelectedIndex(> 1> );> > b2.setSelectedIndex(> 2> );> > > l1.setText(b.getSelectedValue()+> ' '> +b1.getSelectedValue()> > +> ' '> +b2.getSelectedValue());> > > //add item listener> > b.addListSelectionListener(s);> > b1.addListSelectionListener(s);> > b2.addListSelectionListener(s);> > > //add list to panel> > p.add(l);> > p.add(b);> > p.add(b1);> > p.add(b2);> > p.add(l1);> > > f.add(p);> > > //set the size of frame> > f.setSize(> 500> ,> 600> );> > > f.show();> > }> > public> void> valueChanged(ListSelectionEvent e)> > {> > //set the text of the label to the selected value of lists> > l1.setText(b.getSelectedValue()+> ' '> +b1.getSelectedValue()> > +> ' '> +b2.getSelectedValue());> > > }> > > }> |
Sortir :
Remarque : Les programmes ci-dessus peuvent ne pas fonctionner dans un compilateur en ligne. Veuillez utiliser un IDE hors ligne.