Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   mostrar y ocultar una ventana (https://www.clubdelphi.com/foros/showthread.php?t=60983)

Tonio 21-10-2008 16:27:28

mostrar y ocultar una ventana
 
Deseo que cada cierto tiempo se muestre una ventana con un texto, al cabo de otro tiempo se oculta y así sucesivamente, mostrar/ocultar, con tiempos definidos por mi, hasta que, voluntariamente, la cierre definitivamente.
He hecho pruebas con Sleep(), pero cuando quería detener el programa, simplemente no lo podía hacer.
No se si se lo creeran, pero afirmo que he buscado de todas formas y maneras y docenas de palabras clave, pero nada.
He visto los splahs screen, creo se escribe así, sería eso, pero volver a repetirlos una y otra vez, si aplicación alguna.
Si es muy fácil ruego que no se rian mucho.
Un saludo y gracias de antemano.
Tonio.

droguerman 21-10-2008 16:40:41

sleep detiene el hilo del programa principal, Intenta hacerlo con Threads separadas

TOPX 21-10-2008 16:42:30

O con un Timer (pestaña System), que a la larga podría ser lo mismo que hilos separados...

Caro 21-10-2008 16:43:45

Hola Tonio, puedes hacerlo con un Timer, en su propiedad Inteval le das el tiempo y en el evento Ontimer haces el Close de ese formualrio. Y en el formulario que lo llama lo mismo otro Timer que cada cierto tiempo llame al otro formulario.

Saluditos

Tonio 22-10-2008 15:49:51

Mostrar y ocultar una ventana
 
Gracias por vuestras rápidas respuestas.
Lo he solucionado, había algo que no sabía, me lo aclaró Caro, aunque quizá no fue esa su intención, no lo se, pero gracias, lo de poner un tiempo en 'interval' y otro en el 'ontimer', me lo solucionó.

Código:

Timer1.Interval := 20000;

// en el ontime

 Timer1.Enabled := False;
 form1.Hide;
 Timer1.Enabled := True;
 sleep(13000);
 Timer1.Enabled := False;
 form1.Show;
 Timer1.Enabled := True;

He hecho pocas pruebas, pero por ahora me funciona.
Para mi el truco es 'parar' y 'rearrancar' el timer.
Si supiérais la cantidad de código que he escrito, os estariais riendo un buen rato.
Gracias nuevamente, sabía que no me fallaríais.
Un saludo.
Tonio.


La franja horaria es GMT +2. Ahora son las 21:52:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi