एक JList, JComponent क्लास का एक सबक्लास है जो यूजर को आइटम्स का सिंगल या मल्टीपल सिलेक्शन चुनने की अनुमति देता है। एक JList ListSelectionListener इंटरफेस उत्पन्न कर सकता है और इसमें एक एब्स्ट्रैक्ट मेथड valueChanged() शामिल होता है। हम MouseListener इंटरफेस को इम्प्लीमेंट करके या MouseAdapter क्लास को एक्सटेंड करके और MouseEvent क्लास के getClickCount() मेथड को सिंगल-क्लिक इवेंट (getClickCount() == 1) के साथ कॉल करके JList से आइटम चुने जाने पर मान प्रदर्शित कर सकते हैं।
उदाहरण
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class JListItemSeletionTest extends JFrame {
private JList list;
private JScrollPane jsp;
private Vector data;
public JListItemSeletionTest() {
setTitle("JListItemSeletion Test");
list = new JList();
data = new Vector();
data.addElement("India");
data.addElement("Australia");
data.addElement("England");
data.addElement("England");
data.addElement("New Zealand");
data.addElement("South Africa");
list.setListData(data);
list.setSelectedIndex(0);
list.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
if (me.getClickCount() == 1) {
JList target = (JList)me.getSource();
int index = target.locationToIndex(me.getPoint());
if (index >= 0) {
Object item = target.getModel().getElementAt(index);
JOptionPane.showMessageDialog(null, item.toString());
}
}
}
});
jsp = new JScrollPane(list);
add(jsp, BorderLayout.NORTH);
setSize(400, 275);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String args[]) {
new JListItemSeletionTest();
}
}
आउटपुट
