Existe um método chamado Application.ProcessMessages; que força a aplicação processas as mensagens do sistema operacional, como por exemplo a exibição correta do form. Com isto, não só o form é visualizado corretamente, mas também nossa barrinha de progresso funciona perfeitamente.
Digamos que tenhamos um ADOTable com vários registros abertos e vamos percorrer um a um:
Pronto. Agora é só você implementar uma barra de progresso e deixar a seu gosto.
Digamos que tenhamos um ADOTable com vários registros abertos e vamos percorrer um a um:
ADOTable1.First;
while not (ADOTable1.Eof) do
begin
lblStatus.Caption := 'Processando registro...'; // exibimos alguma mensagem
Application.ProcessMessages; // chamados o método que força o SO a desenha a janela
ADOTable1.Next; // pula para o próximo registro da tabela
end;
Pronto. Agora é só você implementar uma barra de progresso e deixar a seu gosto.