Cerrar ventanas en un tiempo determinado

Karmyna
16 de Marzo del 2006
Hola quisiera saber si alguien sabe como puedo hacer para mostrar una ventana de java por un tiempo determinado, digamos 30 minutos y transcurrido este tiempo, se deben leer los datos de las cajas de texto de la ventana, y esta se debe ocultar, no tengo idea como hacerle, espero me puedan ayudar... TNKS bye

Diego
16 de Marzo del 2006
No se si será la mejor opción, pero lo que puedes hacer es crear un hilo, con prioridad máxima, en cuyo método run duerma el tiempo que esperas que esté la ventana en un determinado estado y después de llamar a sleep, introduzcas el código que oculte la ventana que llamas. Por ejemplo:

public class Ocultador extends Thread{

private Component componenteAOcultar;
private long milisegundos;

public Ocultador(Component componenteAOcultar,long milisegundos, boolean inmediatamente)
{
this.milisegundos=milisegundos;
this.componenteAOcultar=componenteAOcultar;
if(inmediatamente)
start();
}

public void run(){
sleep(milisegundos);
componenteAOcultar.setVisible(false);
}
}

Espero que te sirva.

Diego
16 de Marzo del 2006
Se me ha olvidado poner en el constructor, setPriority(MAX_PRIORITY);, de modo que cuando deje de dormir intervenga lo antes posible.