Atualizando informações da aplicação

Veja nesta dica como atualizar as informações da aplicação

É comum utilizarmos componentes como o ProgressBar e o Gauge para manter o usuário da aplicação informado sobre o progresso de um determinado processo dentro de nossa aplicação. Porém, dependendo do processo a aplicação pode travar sendo definida como não respondendo para o sistema operacional.

Para atualizar as informações da tela durante a execução de um processo pesado e/ou demorado de nossa aplicação podemos utilizar o método ProcessMessages da variável Application. Veja o exemplo abaixo:

procedure TFrmPrincipal.btnExecutarClick( Sender: TObject); var i: Integer; begin ProgressBar1.Min := 0; ProgressBar1.Position := ProgressBar1.Min; ProgressBar1.Max := 100000; for i := 1 to 100000 do begin ProgressBar1.StepIt; Label1.Caption := IntToStr(i); Application.ProcessMessages; end; end;
Listagem 1. Usando ProcessMessages para não travar o sistema

No código da listagem anterior, fazemos um loop de 1 até 100000 atualizando a cada passagem do loop um ProgressBar e um Label. Caso não utilizarmos o método ProcessMessages o Label não será atualizado na tela em tempo real para o usuário da aplicação.


Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados