无法显示JList

时间:2016-05-29 16:55:09

标签: java swing actionlistener jscrollpane jlist

JList内的JScrollPane无法显示ActionListener。我有另一个列表在另一个滚动窗格中打印没有问题,但不在动作侦听器中。

    btnSelecteazaBd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
          String t = new String();
          t = list.getSelectedValue().toString();

          try {                                                    
                w = cautaTabele(t);
          } catch (SQLException ex) {
                Logger.getLogger(Conexiune.class.getName()).log(Level.SEVERE, null, ex);
          }                        
            listaTabele = new JList(w);    
            listaTabeleScrollPane = new javax.swing.JScrollPane(listaTabele);

        }
      });

1 个答案:

答案 0 :(得分:2)

listaTabeleScrollPane = new javax.swing.JScrollPane(listaTabele);

您创建了一个新的JScrollPane,但您从未将滚动窗格添加到框架中。

不要创建新的JScrollPane。

相反,您只需更新现有scrollPane的视口:

//listaTabeleScrollPane = new javax.swing.JScrollPane(listaTabele);
listaTabeleScrollPane.setViewportView( listaTabele );

或者另一种选择是只更新JList的ListModel:

listaTabele.setModel( w );

所以现在不需要创建新的JList或重置scrollpanel的视口。