LLenar un JTable

Hola
Mi pregunta es como puedo llenar una tabla (jtable) a partir del valor ingresado en un jtextfield.
Bueno yo utilizo MVC y en Control coloque el siguiente código
public static ArrayList cargarProductos(){
              ArrayList arr = new ArrayList();
              Connection con = null;
              PreparedStatement ps = null;
              String consulta = "SELECT CLV_EQUIPO,NOM_EQUIPO,DES_EQUIPO" 
                    + "FROM EQUIPO"
                    + "WHERE NOM_EQUIPO LIKE ? ";
              Equipo equipo = new Equipo();
              try{
                  con = Conexion.getConexion();
                  if( con!=null ){
                      ps = con.prepareStatement(consulta);
                      ResultSet rs = ps.executeQuery();
                      while( rs.next() ){
               equipo.setclv_equipo(rs.getString(1));
           equipo.setnom_equipo(rs.getString(2));
           equipo.setdes_equipo(rs.getString(3));
                                      if(arr.isEmpty())
                                arr.add(0,equipo);
                             else
                                arr.add(equipo);
                      }
                  }
              }catch(SQLException sqle){
                 System.out.println("Error--> Cargar productos  " + sqle.getMessage());
              }finally{
                  try{
                      if( con!=null){
                        ps.close();
                        con.close();
                      }
                  }catch(Exception exc){ }
              }
         return arr;
       }
Y para la Vista coloque lo siguiente pero no se que me hace falta
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import javax.swing.table.DefaultTableModel;
import javax.swing.event.*;
public class BequipoFrm extends JFrame{
 JPanel jpUno;
 JLabel jlNom;
 JTextField jtfNom;
    JButton jbCargar;
    JButton jbClave;
    JTable jtProductos;
 JScrollPane jspUno;
 DefaultTableModel modelo;
 String[] encabezados = {"Clave","Nombre","Descripcion"};
 Equipo equipo= new Equipo();
    Object[][] tmp ={};
 ListSelectionModel rowSM;
 public BequipoFrm(){
  super("Busqueda por Equipo");
  jpUno=new JPanel(null);
        jlNom = new JLabel("Tipo");
     jlNom.setBounds(200,10,90,20);
     jpUno.add(jlNom);
     jtfNom = new JTextField();
     jtfNom.setBounds(300,10,280,20);
     jpUno.add(jtfNom); 
     jtfNom.addActionListener(new ActionListener() {
     public void actionPerformed(ActionEvent e) {
     }
  });
     jbCargar=new JButton("Buscar");
  jbCargar.setBounds(700,10,90,20);
  jpUno.add(jbCargar);  
  jbCargar.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent ae) {
                 if(jtfNom.getText().equals(equipo.getnom_equipo())){
                   cargarDatos();
                  }else{
                   System.out.println("Error");
                  }
                   jbCargar.setEnabled(false);
            }
        });
     modelo =  new...

1 Respuesta

Respuesta
1
Nunca estas agregando el jtProductos al row, si vez lo que haces es cargar la nueva fila vacía, y nunca le agregas los datos
public void cargarDatos(){
       ArrayList arrEquipo = EquipoCtrl.cargarProductos();
           for(int f=0;f<arrEquipo.size();f++){
                Object []num={};
       modelo.addRow(num);
       Equipo equi=(Equipo)arrEquipo.get(f);
       jtProductos.setValueAt(equi.getclv_equipo(),f,0);
       jtProductos.setValueAt(equi.getnom_equipo(),f,1);
       jtProductos.setValueAt(equi.getdes_equipo(),f,2);
          }
    }
Muchas Gracias por tu ayuda ya me quedo aquí dejo el código, espero y sirva de algo.
public void cargarDatos(){
        ArrayList arrProd = EquipoCtrl.cargarProductos((String)(jcbClaveb.getSelectedItem()));
        for(int fila = 0; fila < arrProd.size();fila++){
   Object []num={};
   modelo.addRow(num);
   Equipo equipo = (Equipo)arrProd.get(fila);
   jtProductos.setValueAt(equipo.getnom_equipo(),fila,0);
   jtProductos.setValueAt(equipo.getclv_equipo(),fila,1);
   jtProductos.setValueAt(equipo.getdes_equipo(),fila,2);
   jtProductos.setValueAt(equipo.getmanufactura_equipo(),fila,3);
   jtProductos.setValueAt(equipo.getespe_equipo(),fila,4);
   jtProductos.setValueAt(equipo.getestado_equipo(),fila,5);
   jtProductos.setValueAt(equipo.getnom_suc(),fila,6);
   jtProductos.setValueAt(equipo.getnom_zona(),fila,7);
   jtProductos.setValueAt(equipo.getnom_ubi(),fila,8);
   jtProductos.setValueAt(equipo.getnom_per(),fila,9);
   jtProductos.setValueAt(equipo.getnom_dir(),fila,10);
   jtProductos.setValueAt(equipo.getnom_area(),fila,11);
   jtProductos.setValueAt(equipo.getnom_sarea(),fila,12);
   jtProductos.setValueAt(equipo.getnom_dep(),fila,13);
   jtProductos.setValueAt(equipo.getnom_pr(),fila,14);
  }
    }

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas