Foros del Web » Programación para mayores de 30 ;) » Java »

Pasar valor JTextfield entre clases

Estas en el tema de Pasar valor JTextfield entre clases en el foro de Java en Foros del Web. Hola, soy un completo novato y el problema que tengo es que el String se pasa antes de que haga click en el botón: moramail.java ...
  #1 (permalink)  
Antiguo 30/12/2010, 02:16
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Pasar valor JTextfield entre clases

Hola, soy un completo novato y el problema que tengo es que el String se pasa antes de que haga click en el botón:

moramail.java

import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;

public class moramail {

/**
* @param args the command line arguments
*/

public static void main (String [] args) {
// La ventana de la aplicación, definida en la clase VentanaPrincipal.java
VentanaPrincipal vp = new VentanaPrincipal();

System.out.println("Se ha pasado el valor: "+ vp.pasapara());
}

VentanaPrincipal.java

public class VentanaPrincipal extends JFrame implements ActionListener{

private JButton jbtn_boton;
private JTextField jtxt_texto;
private JLabel jlbl_label;
private String para;


public VentanaPrincipal(){
super("Mi primer Gui");

this.definirVentana();

this.setResizable(false);
this.setLocationRelativeTo(null);

this.setSize(400, 400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
this.setVisible(true);
}

public void definirVentana(){
this.setLayout(new FlowLayout()); // Orden de los elementos que tendrá la ventana por orden del this.add
jbtn_boton = new JButton("Enviar");
jtxt_texto = new JTextField(20);
jlbl_label = new JLabel();
this.add(jtxt_texto);
this.add(jbtn_boton);
this.add(jlbl_label);



jbtn_boton.addActionListener(this);
}

public void actionPerformed(ActionEvent e) {
if (e.getSource() == jbtn_boton){
jlbl_label.setText(jtxt_texto.getText());
}
}

public String pasapara(){
para = jtxt_texto.getText();
return para;
}

}

Pues eso, moramail.java escribe la variable "para" vacía, eso es porque se ejectua antes de que se haga click en el botón, pero no sé como hacerlo esperar a ese evento... :(

Si alguien puede decirme como...
Muchas gracias!
  #2 (permalink)  
Antiguo 31/12/2010, 02:39
 
Fecha de Ingreso: diciembre-2010
Mensajes: 459
Antigüedad: 13 años, 4 meses
Puntos: 21
Respuesta: Pasar valor JTextfield entre clases

1º create un meto get y set para jtxt_texto en VentanaPrincipal.java y el system borratelo de moramail.

2º en VentanaPrincipal.java en el

public void actionPerformed(ActionEvent e) {
if (e.getSource() == jbtn_boton){
jlbl_label.setText(jtxt_texto.(el metodo get de este JText);
o
jlbl_label.setText(jtxt_texto.(el metodo get de este JText).getText);
}

prueba con eso
  #3 (permalink)  
Antiguo 04/01/2011, 05:17
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Pasar valor JTextfield entre clases

Gracias, perdona la demora, estas fechas...

Ya logré solucionarlo.

Gracias de nuevo por el interés! :)

Etiquetas: clases, jtextfield, pasar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:53.