无法显示 JList

Cannot display a JList

我无法在 JScrollPane 中显示 JList,因为它在 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);

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

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

不要创建新的 JScrollPane。

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

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

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

listaTabele.setModel( w );

因此现在无需创建新的 JList 或重置滚动面板的视口。