Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách đọc giá trị từ JTextField và thêm vào JList trong Java

JList là một lớp con của JComponent cho phép người dùng chọn một lựa chọn đơn (single selection) hoặc nhiều lựa chọn (multiple selections). Lớp JList bản thân không hỗ trợ thanh cuộn. Để thêm thanh cuộn, phải dùng JScrollPane cùng JList. JScrollPane tự động quản lý thanh cuộn. Lớp DefaultListModel cung cấp triển khai đơn giản của model danh sách, dùng để quản lý các mục hiển thị bởi JList. Chúng ta có thể thêm mục vào JList bằng phương thức addElement() của DefaultListModel. Cũng có thể thêm mục vào JList bằng cách đọc giá trị đầu vào từ text field.

Ví dụ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class JTextfieldToJListTest extends JFrame {
    private DefaultListModel model;
    private JList list;
    private JTextField jtf;

    public JTextfieldToJListTest() {
        setTitle("JTextfieldToJList Test");
        model = new DefaultListModel();
        jtf = new JTextField("Type something and Hit Enter");
        jtf.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent me) {
                jtf.setText("");
            }
        });
        list = new JList(model);
        list.setBackground(Color.lightGray);
        jtf.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                model.addElement(jtf.getText());
                JOptionPane.showMessageDialog(null, jtf.getText());
                jtf.setText("Type something and Hit Enter");
            }
        });
        add(jtf, BorderLayout.NORTH);
        add(new JScrollPane(list), BorderLayout.CENTER);
        setSize(375, 250);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        setVisible(true);
    }

    public static void main(String[] args) {
        new JTextfieldToJListTest();
    }
}

Kết quả

Cách đọc giá trị từ JTextField và thêm vào JList trong Java