ayuda!

mario
26 de Junio del 2003
tengo el siguiente programa:

class Principal
{
public Principal()
{
Acceso ppal=new Acceso(); // es una clase que se encarga de verificar un login y clave.
if(ppal.IngresoPermitido()) //retorna true o false, dependiendo si login y clave correctos.
System.out.println("primer system");
else
System.out.println("segundo system");
}
public static void main(String[] args)
{
new Principal();
}
}

El problema es el siguiente:
Tengo la Clase Acceso que lo que realiza en pocas palabras es mostrar una ventana pidiendo un login y una clave y un boton aceptar. Lo que quiero es realizar un metodo que me retorne true o false si el login y clave son o no correctas. pero que la funcion retorne lo que le corresponde solo despues de haber pulsado el boton de aceptar. y ya que la pulsacion del boton se sabe solo mediante un evento, como putas hago para retornar algo???? ademas que en el actionPerformed() no se puede retornar nada.

cualquier ayuda sera bien agradecida. cambio y fuera.

Pedro
26 de Junio del 2003
Buenas, sin pensarlo mucho, y a estas horas de la mañana y encima viernes, se me ocurre lo siguiente, cuando crees el objeto Acceso pásale la referencia de la clase Principal, new Acceso(this);
crea un método en la clase principal que se llame algo como estadoAcceso(boolean estado);
Cuando se dispare el evento actionPerformed del botón de validación, y después de comprobar el si ha sido correcta o no, simplemente haz llama al método de la clase principal, ya tienes su referencia, estadoAcceso y pásale el valor.

Aún así he estado pensando que podías crear una especie de wrapper para que te gestione eso, ya que todo es completamente asíncrono, la solución primera que te he dado no es la que más me gusta pero como no sé cómo has planteado tu aplicación no me atrevo a sugerirte un modelo de clases diferente, intenta ir por la segunda via (wrapper intermedio y revisa si es posible el modelo) Aún así, funciona. Suerte.

mario
26 de Junio del 2003
disculpa mi ignorancia, pero si fueran tan amable y me dijieras que es o donde puedo encontrar informacion de que es wrapper, me seria util; chao y gracias.