我要实现的功能是,一个JFrame里有两个按钮。按下第一个按钮JFrame加载JPanel1,按下第二个切换到JPanel2。
  主要的代码如下:
        jButton1.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e) {
                if (selected != null)
                    Frame1.this.remove(selected);
                selected = new Panel1();                selected.setBounds(0, 0, 400, 300);
                Frame1.this.add(selected);
                Frame1.this.repaint();
                
            }
        });Panel1里有一个JLabel和一个在JScrollPane里的JList
Panel2里有一JList和一个在JScrollPane里的JList
问题是:
  Panel1里的的JLabel能正常显示,在JScrollPanel里的JList空空如也,什么也没有
  Panel1里的的JList 能正常显示,在JScrollPanel里的JList也不能显示
  请问怎么才能让在JScrollPanel里的JList显示其中的内容?
另外我也试过,在JScrollPanel里的JTable能够正常显示。 谢谢!Panel1和Panel2的代码如下public class Panel1 extends JPanel {
    public Panel1() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }    private void jbInit() throws Exception {
        this.setLayout(null);
        DefaultListModel model=new DefaultListModel();
        model.addElement("1");
        model.addElement("2");
        jList1.setModel(model);
        jScrollPane1.setBounds(new Rectangle(59, 62, 285, 131));
        jLabel1.setText("jLabel1");
        jLabel1.setBounds(new Rectangle(62, 25, 151, 23));
        this.add(jScrollPane1);
        this.add(jLabel1);
        jScrollPane1.getViewport().add(jList1);
    }    JScrollPane jScrollPane1 = new JScrollPane();
    JList jList1 = new JList();
    JLabel jLabel1 = new JLabel();
}public class Panel2 extends JPanel {
    public Panel2() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }    private void jbInit() throws Exception {
        this.setLayout(null);
        DefaultListModel model=new DefaultListModel();
        model.addElement("1");
        model.addElement("2");
        jList1.setModel(model);
        jList2.setModel(model);
        jScrollPane1.setBounds(new Rectangle(86, 61, 236, 161));
        jList2.setBounds(new Rectangle(73, 11, 65, 29));
        this.add(jScrollPane1);
        this.add(jList2);
        jScrollPane1.getViewport().add(jList1);
    }    JScrollPane jScrollPane1 = new JScrollPane();
    JList jList1 = new JList();
    JList jList2 = new JList();
}