我在用户界面添加内容时发现添加完后JList列表数据没有更改,输出发现已经添加进去了。
问如何在添加数据后重载或者刷新JList列表?

解决方案 »

  1.   

    有没有把JList放到上层容器中
      

  2.   

    添加后应该会自动刷新的吧import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class JListFrame extends JFrame 
    {
    private DefaultListModel model = new DefaultListModel();
    private JList list = new JList(model);
    private JButton btn = new JButton("添加");

    public JListFrame()
    {
    this.setLayout(new BorderLayout());

    add(new JScrollPane(list), BorderLayout.CENTER);
    add(btn, BorderLayout.SOUTH);
    btn.addActionListener(new ActionListener()
    {
    public void actionPerformed(ActionEvent event)
    {
    model.addElement("data");
    }
    });
    }

    public static void main(String[] args)
    {
    JFrame frame = new JListFrame();
    frame.pack();
    frame.setVisible(true);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }
      

  3.   


    就是这个DefaultListModel  这个问题问过老师后也是这样解决的!