Java - eclipse y this

 
Vista:

eclipse y this

Publicado por omar (3 intervenciones) el 22/05/2006 17:37:44
Estoy empesando a trabajar con eclipse y tengo el siguiente problema:

Con eclipse uso el visual editor y le digo que voy a crear una clase tipo jframe con swin.

Eclipse me crea una clase que extiende Jframe, le adiciono los jlabel, los botones, y todo bien hasta ahi.

El problema se presenta cuando le adiciono un evento al boton e intento tener acceso con el objeto this al frame desde el evento, por ejemplo:

si mi frame se llama ventana e intento:

- ocultar el frame: ventana.setVisible(false)
o
- cambiar el titulo del frame: : ventana.setTitle(\"xx);

Esto no me funciona, el objeto this en los eventos no me reconoce estas propiedades.

Normalmente si no uso visual editor, yo creo la clase, creao un frame y desde cualquier parte de mi clase accedo a las propiedades del frame.

Como hago para solucionar este problema? me podrian dar un ejemplo por favor?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:eclipse y this

Publicado por Kike (72 intervenciones) el 22/05/2006 17:56:47
Hola. No he entendido bien lo que estas tratando de explicar, pero por lo que puedo captar tienes problemas al hacer referencia a un formulario desde un evento de un botón; algo como lo siguiente:

// Ejemplo
miBoton.addActionListener(
new ActionListener(){
public void actionPerformed( ActionEvent evento ){
// this.setVisible( true ); <-- Esto es un error
}
}
);

El error se debe a que con this haces referencia a la clase anónima en donde se programa el evento del botón. Para acceder al formulario tendrás que tener una instancia de él o hacerlo con:

Formulario.this.setVisible( true ); donde Formulario es el nombre de la clase que extiende a JFrame

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:eclipse y this

Publicado por alex (1 intervención) el 23/05/2006 15:43:18
Hola como estas pero lo que te entiendo es que tu al momento de querer poner el nombre aun aventana te sale error lo que te recominedo como espèriencia es de que en el constructor reciba un string y tu al momento de quear un objeto de constructor puedes fijar el nombre::EJM:

//esto en el main

Ventana ven = new Venatana (" El nombre de la ventana");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar