Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/09/2010, 10:09
kosios
 
Fecha de Ingreso: marzo-2009
Mensajes: 90
Antigüedad: 15 años, 2 meses
Puntos: 0
Añadir elementos de un vector objeto en un Jtable

HOla amigos, se trata de capturar median tres jtexfields EL nombre, apellido y edad de un persona, la cual luego es añadida atraves del evento de un boton q llame añadir, este boton añade los campos ya mencionados en un vector objeto, , luego con un boton listar los listaba en un jList q lo llame jList1 , ahora me han pedido q los liste noo en un jList sino en un Jtable.


package logica;

public class Persona {
private String nombres;
private String apellidos;
private int edad;

public String getNombres() {
return nombres;
}

public void setNombres(String nombres) {
this.nombres = nombres;
}

public String getApellidos() {
return apellidos;
}

public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}

public int getEdad() {
return edad;
}


public void setEdad(int edad) {
this.edad = edad;
}

}


package logica;

public class Vector_Persona{

Persona [] vectorp;

private int nelementos;

public int getNelementos() {
return nelementos;
}

public void setNelementos(int nelementos) {
this.nelementos = nelementos;
}

public Vector_Persona(int T){

vectorp = new Persona [T];
nelementos=0;
}
public void setvector(int i, Persona per){
vectorp[i]=per;
}

public Persona getvector(int i){

return vectorp[i];
}

public Persona buscar(String dato){
Persona per=new Persona();
per.setApellidos("");
for (int i=0;i<nelementos;i++){
if (getvector(i).getApellidos().compareTo(dato)==0){
per=getvector(i);
}
}

return per;
}
}

package vista;
import javax.swing.DefaultListModel;
import javax.swing.JOptionPane;
import logica.*;

public class vista_persona extends javax.swing.JFrame {

Vector_Persona myvector;
int longitud;

public vista_persona() {
initComponents();
}

private void initComponents() {

jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jTextField3 = new javax.swing.JTextField();
jButton1 = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
jList1 = new javax.swing.JList();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();

AQUI VAN UNAS COSAS PERO EL TEXTO SE HIZO MUY GRANDE

jButton1.setText("Adicionar");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

jScrollPane1.setViewportView(jList1);

jLabel1.setText("Nombre");

jLabel2.setText("Apellido");

jLabel3.setText("Edad");

jButton2.setText("Listar");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});

jButton3.setText("Buscar");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});

AQUI IBAN COSAS SWING Y ESO Q NO IMPORTA

private void formWindowOpened(java.awt.event.WindowEvent evt) {
longitud = Integer.parseInt(JOptionPane.showInputDialog("Ingr ese el tamaño"));
myvector = new Vector_Persona(longitud);

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

int i = myvector.getNelementos();

Persona per=new Persona();
per.setNombres(jTextField1.getText());
per.setApellidos(jTextField2.getText());
per.setEdad(Integer.parseInt(jTextField3.getText() ));

myvector.setvector(i, per);
i++;

myvector.setNelementos(i);
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField1.grabFocus();

}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

DefaultListModel list= new DefaultListModel();
int T= myvector.getNelementos();
for(int i=0; i< T; i++){
list.addElement(myvector.getvector(i).getApellidos ()+" "+myvector.getvector(i).getNombres()+" "+myvector.getvector(i).getEdad());

}
jList1.setModel(list);
}

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
Persona per =new Persona();
per=myvector.buscar(jTextField2.getText());
if (per.getApellidos().compareTo("")==0)
JOptionPane.showMessageDialog(null,"No existe el dato");
else
{
jTextField1.setText(per.getNombres());
jTextField3.setText(String.valueOf(per.getEdad())) ;
}

}



AQUI VAN OTRAS COSAS PERO SE HIZO MUY LARGO EL TEXTO

}