duda con formularios y clases

Iniciado por Aeros, 18 Mayo 2010, 11:41 AM

0 Miembros y 1 Visitante están viendo este tema.

Aeros

hola que tal

tengo una clase persona que quiero asignarle a cada objeto a un jtext field para poder manipularlas el codigo es :

tengo esta clase persona
public class ClasePersona {
    private String Nombre;
    private String Apellido;
    private String TipodeDoc;
    private int Dni;

    public ClasePersona(String Nombre,String Apellido,String TipodeDoc,int Dni){
        this.Apellido=Apellido;
        this.Nombre= Nombre;
        this.TipodeDoc =TipodeDoc;
        this.Dni= Dni;
}
public String getNombre(){
    return Nombre;
}
public String getApellido(){
    return Apellido;
}
public String getTipodeDoc(){
    return TipodeDoc;

}
public int getDni(){
    return Dni;
}
}


tengo esta ventana
package trabajonumero1;
import javax.swing.*;

public class Ventana1 extends javax.swing.JFrame {

    String Nombre;
    public Ventana1() {
        initComponents();
    }

    @SuppressWarnings("unchecked")

private void txtNombreActionPerformed(java.awt.event.ActionEvent evt) {                                         
     
         
    }                                         

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
       JOptionPane.showMessageDialog(null,txtNumeroDoc.getText());
    }                                       

    private void txtApellidoActionPerformed(java.awt.event.ActionEvent evt) {                                           
       
    }                                           

    private void txtTipoDocActionPerformed(java.awt.event.ActionEvent evt) {                                           
       
    }                                         

    private void txtNumeroDocActionPerformed(java.awt.event.ActionEvent evt) {                                             
       
    }                                           


    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Ventana1().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JTextField txtApellido;
    private javax.swing.JTextField txtNombre;
    private javax.swing.JTextField txtNumeroDoc;
    private javax.swing.JTextField txtTipoDoc;
    // End of variables declaration                   

}


si no se entendio mi duda la repito en el txtNombre quiero guardalo en el objeto Nombre y asii para usar los metodos getNombre

saludos

D71

#1
Creo que te has hecho un lio.

Por un lado creas una variable String nombre en la interfaz, y por otra dices que quieres usar los metodos getNombre() de la clase persona...

Si lo que quieres es que el atributo nombre de la clase persona sea lo que se escriba en el textbox, deberias hacer un objeto de la clase persona y luego usar su metodo setNombre para asignarle el valor...

para ello en vez de poner String nombre en la interfaz pon:

Código (java) [Seleccionar]

ClasePersona persona = new ClasePersona();


y para asignar el valor del textbox al atributo del objeto que acabas de crear

Código (java) [Seleccionar]

persona.setNombre(txtNombre.getText());


para obtener de nuevo el valor lo mismo pero con el getNombre()

Código (java) [Seleccionar]

persona.getNombre();



Edit: Acabo de ver que no tienes los setters, asi que directamente pasale el valor de los atributos con el constructor...

Aeros

lo pongo donde me dices y me sale el siguiente error ( cannot find symbol)

Código ( java) [Seleccionar]
public class Ventana1 extends javax.swing.JFrame {
     ClasePersona persona = new ClasePersona();
......

D71

Cita de: Aeros en 18 Mayo 2010, 13:05 PM
lo pongo donde me dices y me sale el siguiente error ( cannot find symbol)

Como te he puesto en la ultima linea tienes que pasarle los atributos mediante el constructor

Código ( java) [Seleccionar]

ClasePersona persona = new ClasePersona(
txtNombre.getText(),
txtApellido.getText(),
txtTipoDoc.getText(),
txtNumeroDoc.getText()
);


Piensa que debes construir el objeto cuando ya tengas los valores