Vale, creo que no te entendí
a ver ahora (y teniendo en cuenta lo comentado por Marcos.....)
Código:
var
Preguntar: boolean;
procedure TMiForm.ProcesoQueSeaQueHaceBucle(parametros);
begin
Preguntar := false;
for i :=0 to n-1 do
begin
if Preguntar then
Application.MessageBox('Desea cancelar el proceso?', 'Atención',
MB_APPLMODAL or MB_ICONQUESTION or MB_YESNO) = mrYes then
Break;
// proceso del bucle
Application.ProcessMessages;
end;
end;
procedure TMiForm.BotonClick(Sender: TObject);
begin
Preguntar := true;
end;