Sandro Ricardo wrote: > Bom dia amigos, > > Quero compartilhar uma dúvida com vocês. > Preciso colocar um 'botão' para que o usuário possa interromper um > determinado processamento. > > Por exemplo, durante um With QueSel Do > Begin ...... > ou > > While not Eof do > Begin > DtTeste.Append; ..... > > que neste caso específico demora um tempo relativamente grande, o usuário > pode cancelar o processamento, saindo sem gravar a operação. > > Alguém sugere algo ???
- Crie uma variável no formulário, área private: VCancelar: Boolean; - Crie o botão cancelar e em seu evento coloque: VCancelar := True; - inicialize a variável, consulte seu resultado e permita que o seu evento seja executado de dentro do laço: VCancelar := False; while not Eof and not VCancelar do begin ... Application.ProcessMessages; end; -- Joao Morais