Ajuda com o Timer...

Delphi

08/08/2005

Boa tarde,
Estou querendo fazer um tipo de splash que no o do Adobe Photoshop, que ali embaixo vai falando varios arquivos e talz... como eu faço pra a cada X segundos mudar o label e o progress bar que esta no form ?

eu ja vi um topico sobre splash, só que eu crio tudo dinamicamente entao nao daria para usar ele como exemplo....

se voces puderem me ajudar...

Sei que sou meio leigo em Delphi, mas um dia eu aprendo :)


Fernando_cunha

Fernando_cunha

Curtidas 0

Respostas

Mahdak

Mahdak

08/08/2005

nao sei se entendi muito bem, mas ai vai uma dica de splash dinamico...


program Granja;

uses
  Forms,
  Principalf in ´Principalf.pas´ ,
  Areaf in ´Areaf.pas´ ,
  Galpaof in ´Galpaof.pas´ ,
  Clientef in ´Clientef.pas´ ,
  Saidaf in ´Saidaf.pas´ ,
  Relatoriof in ´Relatoriof.pas´ ,
  baixaf in ´baixaf.pas´ ,
  Mortalidadef in ´Mortalidadef.pas´ ,
  manubaixaf in ´manubaixaf.pas´ ,
  ConsEstoquef in ´ConsEstoquef.pas´ ,
  sobref in ´sobref.pas´ ,
  ImpRelatoriof in ´ImpRelatoriof.pas´ ,
  Consultasf in ´Consultasf.pas´ ,
  ImpEntradaf in ´ImpEntradaf.pas´ ,
  PassWord in ´PassWord.pas´ ,
  ImpMortalidadef in ´ImpMortalidadef.pas´ ,
  ImpSaidaf in ´ImpSaidaf.pas´ ,
  ImpClientesf in ´ImpClientesf.pas´ ,
  Apres2f in ´Apres2f.pas´ ,
  Entradaf in ´Entradaf.pas´ ;
 
{$R *.RES}
 
var
i:shortint;
maximo:shortint=0;
divisor:shortint=19;
begin
  Application.Initialize;
  Application.Title := ´GSJ2 - LloydSoft´;
  with TApres.Create(nil) do
  try
  Gauge1.MaxValue:=100;
  Show;
  Update;
  Panel1.caption:=´Criando Tela: Principal´;
  Panel1.Repaint;
Application.CreateForm(TPrincipal, Principal);
  for i:=1 to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Entradas´;
  Panel1.Repaint;
Application.CreateForm(TEntrada, Entrada);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Mortalidade´;
  Panel1.Repaint;
Application.CreateForm(TImpMortalidade, ImpMortalidade);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Impressão de Saida´;
  Panel1.Repaint;
Application.CreateForm(TImpSaida, ImpSaida);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Impressão de Clientes´;
  Panel1.Repaint;
Application.CreateForm(TImpClientes, ImpClientes);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Password´;
  Panel1.Repaint;
Application.CreateForm(TPasswordDlg, PasswordDlg);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Consultas´;
  Panel1.Repaint;
Application.CreateForm(TConsultas, Consultas);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Impressão de Entradas´;
  Panel1.Repaint;
Application.CreateForm(TImpEntrada, ImpEntrada);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Impressão de Relatório´;
  Panel1.Repaint;
Application.CreateForm(TImpRelatorio, ImpRelatorio);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Estoque´;
  Panel1.Repaint;
Application.CreateForm(TConsEstoque, ConsEstoque);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Sobre´;
  Panel1.Repaint;
Application.CreateForm(TSobre, Sobre);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Entradas´;
  Panel1.Repaint;
Application.CreateForm(TArea, Area);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Galpão´;
  Panel1.Repaint;
Application.CreateForm(TGalpao, Galpao);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Clientes´;
  Panel1.Repaint;
Application.CreateForm(TCliente, Cliente);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Cadastro de Saídas´;
  Panel1.Repaint;
Application.CreateForm(TSaida, Saida);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Relatório´;
  Panel1.Repaint;
Application.CreateForm(TRelatorio, Relatorio);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Baixa´;
  Panel1.Repaint;
Application.CreateForm(TBaixa, Baixa);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Mortalidade´;
  Panel1.Repaint;
Application.CreateForm(TMortalidade, Mortalidade);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Criando Tela: Manutenção´;
  Panel1.Repaint;
Application.CreateForm(TManubaixa, Manubaixa);
  for i:=maximo to (maximo+(100 div divisor)) do
  begin
  gauge1.progress:=i;
  maximo:=i;
  end;
  Panel1.caption:=´Finalizando´;
  Panel1.Repaint;
  finally
  Free;
  end;
  Application.Run;
end.






GOSTEI 0
Fernando_cunha

Fernando_cunha

08/08/2005

entao este exemplo eu vi mas nao da certo porque ali no application.createform.... eu nao crios os forms... eu so crio elas quando eu clico direto no botao....

queria uma rotina parecida porem no lugar dos forms poderia ser uns labels da vida mesmo.

obrigado pela ajuda !


GOSTEI 0
POSTAR