Altalena Java | JList con esempi
JList fa parte del pacchetto Java Swing. JList è un componente che visualizza un insieme di oggetti e consente all'utente di selezionare uno o più elementi. JList eredita la classe JComponent. JList è un modo semplice per visualizzare una serie di vettori.
I costruttori per JList sono:
- JList() : crea una lista vuota JList(E [ ] l) : crea una nuova lista con gli elementi dell'array. JList(ListModel d) : crea una nuova lista con il modello di lista specificato JList(Vector l) : crea una nuova lista con gli elementi del vettore
I metodi comunemente utilizzati sono:
| metodo | spiegazione |
|---|---|
| getSelectedIndex() | restituisce l'indice dell'elemento selezionato dell'elenco |
| getValoreSelezionato() | restituisce il valore selezionato dell'elemento della lista |
| setSelectedIndex(int i) | imposta l'indice selezionato dell'elenco su i |
| setSelectionBackground(Colore c) | imposta il colore di sfondo dell'elenco |
| setSelectionPrimo piano(Colore c) | Cambia il colore di primo piano dell'elenco |
| setListData(E [ ] l) | Cambia gli elementi dell'elenco negli elementi di l . |
| setVisibleRowCount(int v) | Modifica la proprietà visibileRowCount |
| setSelectedValue(Oggetto a, booleano s) | seleziona l'oggetto specificato dall'elenco. |
| setIndiciSelezionati(int[] i) | cambia la selezione in modo che sia l'insieme di indici specificati dall'array specificato. |
| setListData(Vettore l) | costruisce un ListModel di sola lettura da un Vector specificato. |
| setLayoutOrientation(int l) | definisce l'orientamento della lista |
| setFixedCellWidth(int w) | Modifica la larghezza della cella dell'elenco nel valore passato come parametro. |
| setFixedCellHeight(int h) | Modifica l'altezza della cella dell'elenco nel valore passato come parametro. |
| isSelectedIndex(int i) | restituisce vero se è selezionato l'indice specificato, altrimenti falso. |
| indicePerPosizione(int i) | restituisce l'origine dell'elemento specificato nel sistema di coordinate dell'elenco. |
| getToolTipText(MouseEvent e) | restituisce il testo della descrizione comando da utilizzare per l'evento specificato. |
| getSelectedValuesList() | restituisce un elenco di tutti gli elementi selezionati. |
| getIndiciSelezionati() | restituisce un array di tutti gli indici selezionati, in ordine crescente |
| getMinSelectionIndex() | restituisce l'indice di cella selezionato più piccolo o -1 se la selezione è vuota. |
| getMaxSelectionIndex() | restituisce l'indice di cella selezionato più grande o -1 se la selezione è vuota. |
| getListSelectionListeners() | restituisce gli ascoltatori della lista |
| getLastVisibleIndex() | restituisce l'indice dell'elenco più grande attualmente visibile. |
| getDragEnabled() | restituisce se la gestione automatica del trascinamento è abilitata o meno |
| addListSelectionListener(ListSelectionListener l) | aggiunge un listSelectionlistener all'elenco |
I seguenti programmi illustreranno l'uso delle JList
1. Programma per creare una semplice JList
Giava
// 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();> > }> > > }> |
Produzione :
2. Programma per creare un elenco e aggiungervi itemListener (programma per selezionare il tuo compleanno utilizzando gli elenchi).
Giava
// 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());> > > }> > > }> |
Produzione :
Nota: i programmi di cui sopra potrebbero non essere eseguiti in un compilatore online, utilizzare un IDE offline