REVELAR

Fórum Problemas com Try / Exception #330780

05/10/2006

0

Caros amigos, gostaria da ajuda de vocês para resolver um problema que creio ser simples, mas devido a minha falta de experiência com esta linguagem, está me deixando doido!!!
Bom seguinte: Tenho uma rotina que efetua a copia de registros de um arquivo para outro (Registro a registro) e eu abro um form com uma barra de progresso que vai apresentando ao usuário o andamento da cópia. O problemas é que eu gostaria de colocar um botão cancelar neste form com a barra de progresso e chamar uma exceção que irá cancelar todo o processo. Bom para ilustrar melhor, abaixo coloco mais ou menos como está;


//************************************************************
//* PRINCIPAL
FrmPrincipal

uses FrmBarra

var Cancelado : boolean; // Criei essa variavel para indicar quando for cancelado pelo usuário

Function Processaxyz()
begin

Try
Cancelado := false;
(Começa o processo...)
(Crio o formulário que irá apresentar a barra de progresso)
while (condicao)
(vou copiando registro a registro)
(Vou atualizando a barra de progresso: FrmBarra.Progressbar.stepit;)
Application.processmessages;

Fecha condicao While()
Except
(Fecha o arquivo)
if Cancelado = true then
(Exibe mensagem de erro ao usuário)
;
end;

//***********************************************************
FrmBarra

uses FrmPrinc

BotaoCancelar.Onclick(...)
begin

If Mensagem(..) == MrYes then
begin
FrmPrinc.Cancelado := false;
Abort; // Mesmo assim, no FrmPrinc, o processo continua sem ir para
exit; // o except.
end;


Obrigado,

Fabio Souza.


Souza.fo

Souza.fo

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar