Java Swing | JList cu exemple

Java Swing | JList cu exemple

JList face parte din pachetul Java Swing. JList este o componentă care afișează un set de obiecte și permite utilizatorului să selecteze unul sau mai multe elemente. JList moștenește clasa JComponent. JList este o modalitate ușoară de a afișa o serie de Vectori.
Constructorul pentru JList sunt:

    JList() : creează o listă goală JList(E [ ] l) : creează o nouă listă cu elementele matricei. JList(ListModel d): creează o nouă listă cu modelul de listă specificat JList(Vector l): creează o nouă listă cu elementele vectorului

Metodele frecvent utilizate sunt:

metodă explicaţie
getSelectedIndex() returnează indexul articolului selectat din listă
getSelectedValue() returnează valoarea selectată a elementului din listă
setSelectedIndex(int ​​i) setează indexul selectat al listei la i
setSelectionBackground(Culoare c) setează culoarea de fundal a listei
setSelectionForeground(Culoare c) Schimbă culoarea primului plan a listei
setListData(E [ ] l) Schimbă elementele listei în elementele lui l .
setVisibleRowCount(int v) Modifică proprietatea visibleRowCount
setSelectedValue(Obiect a, boolean s) selectează obiectul specificat din listă.
setSelectedIndices(int[] i) schimbă selecția pentru a fi setul de indici specificati de matricea dată.
setListData(Vector l) construiește un ListModel numai pentru citire dintr-un Vector specificat.
setLayoutOrientation(int l) definește orientarea listei
setFixedCellWidth(int w) Schimbă lățimea celulei listei la valoarea transmisă ca parametru.
setFixedCellHeight(int h) Modifică înălțimea celulei listei la valoarea transmisă ca parametru.
isSelectedIndex(int ​​i) returnează adevărat dacă este selectat indexul specificat, altfel false.
indexToLocation(int i) returnează originea articolului specificat în sistemul de coordonate al listei.
getToolTipText(MouseEvent e) returnează textul descrierii pentru a fi utilizat pentru evenimentul dat.
getSelectedValuesList() returnează o listă cu toate elementele selectate.
getSelectedIndices() returnează o matrice a tuturor indicilor selectați, în ordine crescătoare
getMinSelectionIndex() returnează cel mai mic index de celulă selectat sau -1 dacă selecția este goală.
getMaxSelectionIndex() returnează cel mai mare index de celulă selectat sau -1 dacă selecția este goală.
getListSelectionListeners() returnează ascultătorii listei
getLastVisibleIndex() returnează cel mai mare index de listă care este vizibil în prezent.
getDragEnabled() returnează dacă gestionarea automată a glisării este sau nu activată
addListSelectionListener(ListSelectionListener l) adaugă un listSelectionlistener la listă

Următoarele programe vor ilustra utilizarea JLists
1. Program pentru a crea o listă JList simplă

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();> > }> > > }>

Ieșire:

2. Program pentru a crea o listă și pentru a adăuga itemListener la aceasta (program pentru a vă selecta ziua de naștere folosind liste) .

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());> > > }> > > }>

Ieșire:

Notă: Este posibil ca programele de mai sus să nu ruleze într-un compilator online, vă rugăm să utilizați un IDE offline