The object of JList class represents a list of text items. The list of text items can be set up so that the user can choose either one item or multiple items. It inherits JComponent class.
Class Declaration
Following is the declaration for javax.swing.JList class −
public class JList
extends JComponent
implements Scrollable, Accessible
Field
Following are the fields for javax.swing.JList class −
- static int HORIZONTAL_WRAP − Indicates a "newspaper style" layout with cells flowing horizontally then vertically.
- static int VERTICAL − Indicates a vertical layout of cells, in a single column; the default layout.
- static int VERTICAL_WRAP − Indicates a "newspaper style" layout with cells flowing vertically then horizontally.
Class Constructors
Sr.No. | Constructor & Description |
---|---|
1 |
JList()
Constructs a JList with an empty, read-only, model.
|
2 |
JList(ListModel dataModel)
Constructs a JList that displays elements from the specified, non-null, model.
|
3 |
JList(Object[] listData)
Constructs a JList that displays the elements in the specified array.
|
4 |
JList(Vector<?> listData)
Constructs a JList that displays the elements in the specified Vector.
|
Class Methods
Methods Inherited
This class inherits methods from the following classes −
- javax.swing.JComponent
- java.awt.Container
- java.awt.Component
- java.lang.Object
JList Example
Create the following Java program using any editor of your choice or any Integrated Development Environment (IDE)
Output:
Java JList Example with ActionListener
Output:
ALSO ANOTHE EXAMPLE OF JLIST
package com.sjavaspot.gui; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JListDemo { private JFrame mainFrame; private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public JListDemo(){ prepareGUI(); } public static void main(String[] args){ JListDemo jListDemo = new JListDemo(); jListDemo.showListDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Java Swing Examples"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new JLabel("", JLabel.CENTER); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showListDemo(){ headerLabel.setText("Control in action: JList"); final DefaultListModel fruitsName = new DefaultListModel(); fruitsName.addElement("Apple"); fruitsName.addElement("Grapes"); fruitsName.addElement("Mango"); fruitsName.addElement("Peer"); final JList fruitList = new JList(fruitsName); fruitList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); fruitList.setSelectedIndex(0); fruitList.setVisibleRowCount(3); JScrollPane fruitListScrollPane = new JScrollPane(fruitList); final DefaultListModel vegName = new DefaultListModel(); vegName.addElement("Lady Finger"); vegName.addElement("Onion"); vegName.addElement("Potato"); vegName.addElement("Tomato"); final JList vegList = new JList(vegName); vegList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); vegList.setSelectedIndex(0); vegList.setVisibleRowCount(3); JScrollPane vegListScrollPane = new JScrollPane(vegList); JButton showButton = new JButton("Show"); showButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String data = ""; if (fruitList.getSelectedIndex() != -1) { data = "Fruits Selected: " + fruitList.getSelectedValue(); statusLabel.setText(data); } if(vegList.getSelectedIndex() != -1){ data += " Vegetables selected: "; for(Object vegetable:vegList.getSelectedValues()){ data += vegetable + " "; } } statusLabel.setText(data); } }); controlPanel.add(fruitListScrollPane); controlPanel.add(vegListScrollPane); controlPanel.add(showButton); mainFrame.setVisible(true); } }
VERIFY THE OUTPUT
No comments:
Post a Comment