PDA

Ver la Versión Completa : Esperar un tiempo para mostrar otro formulario


vick
07-04-2006, 21:34:38
QUE TAL A TODOS!!!

Resulta que tengo tres formularios, entonces el primero es algo asi como la presentación del sistema(main), entonces lo que quiero hacer es que al iniciar el sistema, este se detenga unos 5 segundos para que se aprecie este formulario, y que después de esos 5 segs. automaticamente muestre el segundo formulario.

Agradezco de antemano la ayuda que se me pueda prestar.

HASTA LUEGO: GRACIAS!!!!!

palets
07-04-2006, 21:39:34
No se di te refieres a mostrar un splash (un form donde se muestra una imagen de presentación o algo por el estilo) ?

Sotrono
07-04-2006, 22:13:28
Hola, si lo que queres es, como dijo palets, una splash screen (son las pantallas que aparecen mientras se carga la aplicacion, ej. cuando abrimos Delphi), busca en la ayuda de Delphi o en los demos.
Sino, si son todos formularios comunes podes usar un Timer y hacer que vaya aumentando una variable hasta llegar a cinco y luego mostrar el formulario que queres. Para hacer eso, primero tenes que inicializar la variable (cont) en 1, y poner el intervalo del Timer en 1000, despues en el evento OnTimer del Timer pones algo como esto:


if cont = 5 then begin
Form2.Show;
Timer1.Active := false;
end
else
cont := cont + 1



Bueno, no se si eso lo que querias..
Bytes.

Otra cosa: Trata de publicar los hilos en los foros correspondientes porque sino queda todo desordenado.

vick
09-04-2006, 19:17:05
si es exactamente lo que quiero, solo que no sabia el término correcto. Deseo crear un splash

Lepe
09-04-2006, 22:10:39
Lo más fácil que se me ocurre es modificar directamente el .dpr Project --> View Source.


verás algo similar a esto:


begin
Application.Initialize;
Application.CreateForm(TForm3, Form3); // se supone que este es tu formulario principal
// deberá tener su propiedad Visible a False para que no se muestre.

Application.CreateForm(TForm1, Form1);
// suponemos que el Form1 es tu splash
Form1.Show;
Form1.Update; // obligamos a que se redibuje
Application.CreateForm(TForm2, Form2); // creamos los demás forms.

Sleep(5000);
Form2.Close // .Free o lo que quieras.
Form3.Visible := true;
Application.Run;
end.


Deberas añadir los uses correspondientes para que funcione.
Además deberás tener cuidado, porque al cambiar el .dpr y guardarlo, tambien se modifica las opciones de Project --> Forms Autocreate. Por eso he creado primero el Form3 (suponiendo que es el programa principal), despues creo manualmente el 1 que es el splash y lo muestro en pantalla.

Por último creamos las demás ventanas, esperamos los 5 segundos, y continuamos con tu programa.

Saludos