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

Usar un String de un ActionPerformed y usarlo fuera en la GUI en un JTextArea

Estas en el tema de Usar un String de un ActionPerformed y usarlo fuera en la GUI en un JTextArea en el foro de Java en Foros del Web. Hola a todos soy nuevo y estoy un poco perdido, os expongo mi caso: Tengo una clase connection que recupera el código html de una ...
  #1 (permalink)  
Antiguo 19/08/2010, 10:47
 
Fecha de Ingreso: agosto-2010
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
Usar un String de un ActionPerformed y usarlo fuera en la GUI en un JTextArea

Hola a todos soy nuevo y estoy un poco perdido, os expongo mi caso:

Tengo una clase connection que recupera el código html de una pagina web X.
El método de esa clase es public String execute() y me devuelve eso, el String con el código. Que esto sucede cuando aprieto el botón de la interfaz gráfica conectar, que ejecuta la instancia de actionConectar que a su vez el método execute que ya he comentado. Lo que intento es que en el JTextArea aparezca ese String después de presionar el botón conectar.

No se como implementar que al darle al botón conectar se rellene, porque si lo pongo ya en setText se pone desde el principio:

Clase VentanaPrincipal
Código:
....
private JButton getBConectar() {
		if (bConectar == null) {
			bConectar = new JButton();
			bConectar.setText("Conectar");
			bConectar.setBounds(new Rectangle(187, 64, 100, 25));
			bConectar.addActionListener(new ActionConectar(this));
			
			
		}
		return bConectar;
....
private JTextArea getCampoCodigo() {
		if (campoCodigo == null) {
			campoCodigo = new JTextArea();
			
		}
		return campoCodigo;
	}
....
Clase ActionConectar(entera)
Código:
package ucam.gui.actions;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import ucam.application.Connection;
import ucam.gui.VentanaPrincipal;

public class ActionConectar implements ActionListener{

	protected VentanaPrincipal ventana;

	public ActionConectar(VentanaPrincipal mw){
		this.ventana = mw;
	}

	public void actionPerformed(ActionEvent arg0) {
		Connection conexion = new Connection();
		conexion.setHost(ventana.getTextoCampoHost());
		conexion.setDomain(ventana.getTextoCampoDomain());
		System.out.println(""+ventana.getTextoCampoHost()+"");
		System.out.println(""+ventana.getTextoCampoDomain()+"");
		conexion.execute(); 
		String texto = conexion.execute();
		
	}
	

}
y decir que conexion.execute es un metodo de tipo String que es el que te recupera el código HTML, me falta que esa variable luego meterla en el JTextArea.

Espero haber sido claro si hace falta que ponga más detalles, pedidmelos, gracias.
  #2 (permalink)  
Antiguo 19/08/2010, 11:30
 
Fecha de Ingreso: agosto-2010
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Usar un String de un ActionPerformed y usarlo fuera en la GUI en un JTextA

SOLUCIONADO
tuve que poner en la GUI(VentanaPrincipal):
Código:
	public void setCampoCodigo(String text) {
		this.campoCodigo.setText(text);
	}
y luego en la clase ActionConectar añadir lo que está en negrita:
[CODE]
package ucam.gui.actions;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import ucam.application.Connection;
import ucam.gui.VentanaPrincipal;

public class ActionConectar implements ActionListener{

protected VentanaPrincipal ventana;

public ActionConectar(VentanaPrincipal mw){
this.ventana = mw;
}

public void actionPerformed(ActionEvent arg0) {
Connection conexion = new Connection();
conexion.setHost(ventana.getTextoCampoHost());
conexion.setDomain(ventana.getTextoCampoDomain());
System.out.println(""+ventana.getTextoCampoHost()+ "");
System.out.println(""+ventana.getTextoCampoDomain( )+"");
conexion.execute();
String texto = conexion.execute();
ventana.setCampoCodigo(texto);
}


}

Etiquetas: fuera, gui, jtextarea, string
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 20:45.