用JButton填充JTable只能在第一次使用

时间:2013-01-11 19:05:55

标签: java swing jtable jbutton

我使用jTable jtBusqueda填充了jButton jbBuscarActionPerformed。它第一次按预期工作,但是当价值被改变时(第二次),它不起作用。

按钮的代码是:

   private void jbBuscarActionPerformed(java.awt.event.ActionEvent evt)    {                                         
        //get data from database
        clsDBBusca dbengine2 = new clsDBBusca();
        try {
            data2 = dbengine2.getBusqueda();
        } catch (Exception ex) {
            Logger.getLogger(clsCodif2.class.getName()).log(Level.SEVERE, null, ex);
        }

        //create header for the table
        header2 = new Vector<String>();
        header2.add("Cve"); //Cve
        header2.add("Descripcion"); // Caracteristica Principal

        jtBusqueda.setModel(new javax.swing.table.DefaultTableModel
            (
                data2, header2
            )
        initComponents();

    } 

    public Vector getBusqueda()throws Exception
        {
            Vector<Vector<String>> resultadoVector = new Vector<Vector<String>>();

            Connection conn = dbConnection();
            PreparedStatement pre = conn.prepareStatement("SELECT Clave_Nueva, Descripcion_Especificaciones FROM famMat_Especificaciones WHERE Descripcion_Especificaciones like '%" + jtBuscaTexto.getText() + "%'");

            ResultSet rs = pre.executeQuery();

            while(rs.next())
            {
                Vector<String> resultado = new Vector<String>();
                resultado.add(rs.getString(1)); //Cve
                resultado.add(rs.getString(2)); //Descripcion de la busqueda
                resultadoVector.add(resultado);
            }

            /*Close the connection after use (MUST)*/
            if(conn!=null)
            conn.close();

            return resultadoVector;

     }

1 个答案:

答案 0 :(得分:0)

尝试添加

jtBusqueda.repaint();