Tela de quot;Aguarde...quot; - Delphi 2007

Delphi

03/08/2008

Ola!

Pessoal, estou procurando um componente, ou uma forma eficaz de se fazer uma tela de ´Aguarde´ no programa , em processos demorados.

Já tentei fazer uma tela dessa, mas qualquer gif colocado ou avi fica travado, e se clicar em qualquer parte do programa o programa começa a ficar branco , tipo ´travado´ voltando ao normal soimente no final do processo.

Já usei um componente pdialog, que fazia esse trabalho perfeitamente, nao deixava a tela ficar branca se clicasse , e ainda eu podia mudar o label dele no meio da minha rotinha e funcionava tudo ok.


então a pergunta é:

[b:cc356f8691]Tem componente nativo para isso? Se não, qual componente usam?

Tem forma de fazer isso manualmente , de forma eficaz?[/b:cc356f8691]

Abraços!


Schaukoski

Schaukoski

Curtidas 0

Respostas

Carlosrm

Carlosrm

03/08/2008

schaukoski,

veja se essa sugestão pode ser aproveitada. Eu apenas despejei um speedbutton (spdDemorado´) e um label (´labelstr´) num formulário.

procedure TF_Compras.spdDemoradoClick(Sender: TObject);
var
  I : integer;
begin
  For I := 0 to 100000 do begin
     if (I mod 1000) = 0 then begin
        spdDemorado.caption := timetostr(time);
     end;
     application.ProcessMessages;
     labelstr.caption := inttostr(I);
  end;
end;


Veja que também poderia usar outros caminhos: TTimer, TProgressBar, cursor animado, exibir mensagens e outras formas, tudo para que o usuário não pense que o sistema ´travou´... Há outras opções mais sofisticadas, mas acho que já dá para começar...

carlosrm


GOSTEI 0
POSTAR