एक JList JComponent क्लास को विस्तारित कर सकता है जो उपयोगकर्ता को एकल या एकाधिक चयन चुनने की अनुमति देता है। एक JList एक ListSelectionListener इंटरफ़ेस उत्पन्न कर सकता है और इसमें एक अमूर्त विधि valueChanged() शामिल है। एक JList सूची में डबल क्लिक इवेंट को पकड़ने के लिए एक MouseListener इंटरफ़ेस भी उत्पन्न कर सकता है और एंटर कुंजी इवेंट को पकड़ने के लिए एक KeyListener इंटरफ़ेस उत्पन्न करता है।
उदाहरण
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
public class JListTest extends JFrame {
public JListTest() {
setTitle("JList Test");
setLayout(new FlowLayout());
Vector v = new Vector();
for (int i = 1; i < 15; i++) {
v.addElement("Item #" + i);
}
add(new JLabel("Double-clicked on: "));
final JTextField dblTextField = new JTextField(15);
add(dblTextField);
add(new JLabel("Enter key on: "));
final JTextField entTextField = new JTextField(15);
add(entTextField);
final JList list = new JList(v);
// डबल-क्लिक इवेंट पकड़ें
list.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
if (me.getClickCount() == 2) {
dblTextField.setText(""+list.getSelectedValue());
}
}
});
// एंटर-कुंजी इवेंट पकड़ें
list.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent ke) {
if(ke.getKeyCode() == KeyEvent.VK_ENTER) {
entTextField.setText(""+list.getSelectedValue());
}
}
});
add(new JScrollPane(list));
setSize(375, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new JListTest();
}
}
आउटपुट
