Java JList
Java JList class inherits from JComponent class.It allows the user to select single or multiple items from a list.
How to Declare Java JList class
This is how java.swing.JList class is declared.
[pclass JList extends JComponent implements Scrollable, Accessible]
Used JList constructors
- JList()-creates empty read-only model JList.
- JList(array [] data)-creates a JList that display elements from a specified array.
- JList(ListModel<array> datamodel)-creates JList that display elements from a model.
JList commonly used methods
- void addListSelectionListener()-adds listener to a list and notifies once selection occurs.
- int getSelectedIndex()-returns smallest selected cell index.
- ListModel getModel()- gets model that holds list data.
- void setListData(Object [] data)-creates ListModel from array.
Java JList Example
[
import javax.swing.JFrame; import javax.swing.JList; import javax.swing.DefaultListModel; public class JListExample extends JFrame{ JListExample() { super("JFrame Example"); DefaultListModel<String> model=new DefaultListModel(); model.addElement("Mango"); model.addElement("Orange"); model.addElement("Banana"); model.addElement("Watermelon"); JList<String> list=new JList(model); list.setBounds(50,50, 75,75); add(list); setSize(400,400); setLayout(null); setLocationRelativeTo(null); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); } public static void main(String args[]) { new JListExample(); } }
]
Java JList with ActionListener Example
[
import javax.swing.JFrame; import javax.swing.JList; import javax.swing.DefaultListModel; import javax.swing.JLabel; import javax.swing.JButton; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class JListExample extends JFrame implements ActionListener{ public JList<String> list; public JLabel label; JListExample() { super("JFrame Example"); DefaultListModel<String> model=new DefaultListModel(); model.addElement("Mango"); model.addElement("Orange"); model.addElement("Banana"); model.addElement("Watermelon"); list=new JList(model); list.setBounds(50,100, 75,75); JButton b=new JButton("Show"); b.setBounds(50, 200, 100, 30); b.addActionListener(this); add(b); add(list); label=new JLabel("Label"); label.setBounds(50,50,300,50); add(label); setSize(400,400); setLayout(null); setLocationRelativeTo(null); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); } public static void main(String args[]) { new JListExample(); } public void actionPerformed(ActionEvent event) { String s=""; if(list.getSelectedIndex()!=-1) { s="Fruit selected is "+list.getSelectedValue(); label.setText(s); } } }
]