Tela de Apresentação

Delphi

18/08/2005

Oi pessoal, tudo bem? Espero que sim.

Olha só, eu to pensando em fazer uma telinha de apresentação pro meu programa, mas a dúvida é a seguinte. Sempre que eu começo uma nova aplicação, o primeiro form que ele salva é sempre o principal, certo? sempre q eu abrir o programa, é essa tela q vai abrir primeiro, né? Bom, a dúvida é a seguinte, eu teria q usar esse form pra fazer a tela de apresentação ou posso usar outro, e fazer esse outro abrir primeiro?



Allan Elias Ramos :wink:


Aersoftware

Aersoftware

Curtidas 0

Respostas

Alanhfs

Alanhfs

18/08/2005

Cara, em opções de projetos você escolhe quais os forms deverão ser criados na inicialização do programa, aí é só você colocar o seu form de apresentação para ser criado e de dentro dele você chama o form principal da sua aplicação e esconde o de apresentação.

Abraço


GOSTEI 0
Aersoftware

Aersoftware

18/08/2005

Aaaah.. entendi.. hehe.. na verdade eu ja tinha feito isso antes.. quer dizer, eu deixo só o form principal pra criar na inicialização, e os outros eu chamo de acordo com q são requisitados. Agora que vc falou me liguei q da pra fazer assim tb.. hehe.. valeu, abraços..



Allan Elias Ramos :wink:


GOSTEI 0
Massuda

Massuda

18/08/2005

O primeiro form criado automaticamente (via Application.CreateForm) é o form principal do programa e é tratado de modo especial pela VCL. Não faça uma tela de apresentação (splash) ou login ser o form principal do seu programa para não ter surpresas desagradáveis.

Faça algo assim...
type
  TFormPrincipal = class...
  private
    Splash: TSeuFormDeApresentacao;
...
procedure TFormPrincipal.FormCreate(... 
begin
  Splash := TSeuFormDeApresentacao.Create(Self); 
  Splash.Show; 
  ...
end;

procedure TFormPrincipal.FormShow(... 
begin
  if Splash <> nil then FreeAndNil(Splash);
  ...
end;



GOSTEI 0
Aersoftware

Aersoftware

18/08/2005

Hmmm.. entendi Massuda, pensei que fosse indiferente essa criaçao. Ainda bem que não fiz ainda. Vou fazer essa tela só depois.

Outra coisa. Eu trabalho com um programa, (provavelmente feito em VB), q tem uma tela de apresentação onde aparece as tabelas sendo carregadas. Achei interessante isso. Como seria pra fazer mais ou menos assim na tela.

Conectando ao Banco de Dados... Conectado!
Carregando Tabelas... (aí iria aparecendo todos os nomes das tabelas até o final aparecer ´Concluído!´, e depois
Iniciando o Programa....

Aí depois de alguns segundos ele iniciaria.. tem como fazer isso?




Allan Elias Ramos :?:


GOSTEI 0
Massuda

Massuda

18/08/2005

...tem uma tela de apresentação onde aparece as tabelas sendo carregadas.... Aí depois de alguns segundos ele iniciaria.. tem como fazer isso?
Pegando o exemplo que postei, vamos imaginar que tem um label chamado lblMensagem no form TSeuFormDeApresentacao; daí você pode fazer algo assim...
type 
  TFormPrincipal = class... 
  private 
    Splash: TSeuFormDeApresentacao; 
... 
procedure TFormPrincipal.FormCreate(... 
begin 
  Splash := TSeuFormDeApresentacao.Create(Self); 
  Splash.Show; 
  ...
  Splash.lblMensagem := ´Iniciando...´; 
  Splash.Update; 
  ...
  Splash.lblMensagem := ´Abrindo tabela 1...´; 
  Splash.Update; 
  // abre a tabela 1
  ...
  Splash.lblMensagem := ´Abrindo tabela 2...´; 
  Splash.Update; 
  // abre a tabela 2
  ...
  Splash.lblMensagem := ´Pronto...´; 
  Splash.Update; 
end; 

procedure TFormPrincipal.FormShow(... 
begin 
  if Splash <> nil then FreeAndNil(Splash); 
  ... 
end;



GOSTEI 0
Aersoftware

Aersoftware

18/08/2005

Valeu Massuda, vou dar uma implementada no código. Abraços.



Allan Elias Ramos :wink:


GOSTEI 0
POSTAR