18/07/2010


Criando uma simples tela de splash com barra de progresso.



- Crie um novo formulário, dê a ele o nome de Splash; 
- Vai no menu la de cima em Project / View Source; 
- Entre o Begin e o End vai ta mais ou menos assim : 

begin 
Application.Initialize; 
Application.MainFormOnTaskbar := True; 
Application.CreateForm(TForm1, Form1); 
Application.CreateForm(TFRMSplash, FRMSplash); { FRMSplash é o nome do form } 
Application.Run; 
end. 
{ nesse caso é de um projeto que só tem um form e o splash } 

- Então você vai ter que deixar dessa maneira : 

Application.Initialize; 
FRMSplash := TFrmSplash.Create(Application); 
FRMSplash.Show; 
FRMSplash.Update; 
Application.MainFormOnTaskbar := True; 
Application.Title := 'NOME DA APLICACAO'; 
Application.CreateForm(TForm1, Form1); 
FRMSplash.Close; 
Application.Run; 

Acabamos... observe que o Show mostra o Splash, update vai deixar ele ateh o close, ou seja, vai carregar o outro form, pra depois fexar ele e o Run no final roda a aplicacao em si, ja que esta tudo carregado. 


COLOCANDO BARRA DE PROGRESSO NO SPLASH 

Um jeito legal de fazer isso é colocar uma Gaugue no Splash e a cada formulario carregado, vai um valor da gague, digamos que tenha 5 formularios, 100 dividido por 5 da 20, entao a cada form vai 20% da gaugue. Ficaria mais ou menos assim : 

Application.Initialize; 
FRMSplash := TFrmSplash.Create(Application); 
FRMSplash.Show; 
FRMSplash.Update; 
Application.MainFormOnTaskbar := True; 
Application.Title := 'NOME DA APLICACAO'; 
Application.CreateForm(TForm1, Form1); 
FRMSplash.NOMEDAGAUGUE.Progress := 20; 
Application.CreateForm(TForm2, Form2); 
FRMSplash.NOMEDAGAUGUE.Progress := 40; 
Application.CreateForm(TForm3, Form3); 
FRMSplash.NOMEDAGAUGUE.Progress := 60; 
Application.CreateForm(TForm4, Form4); 
FRMSplash.NOMEDAGAUGUE.Progress := 80; 
Application.CreateForm(TForm5, Form5); 
FRMSplash.NOMEDAGAUGUE.Progress := 100; 
FRMSplash.Close; 
Application.Run; 



[ Fonte ]

0 comentários:

Postar um comentário