Cita:
¿Existe la posibilidad de crear un objeto log, que sea global a todas las clases?
|
Si existe...
Creas la clase TLog y luego la instacias y la utilizas desde cualquier otro lugar...
El problema: Reutilización!
Si en otro proyecto quieres utilizar alguno de los objetos que habías creado tendrás que crear una clase TLog con el mismo nombre y que quizás no quieras.
También tendrá que estar en el mismo Formulario o DataModule.
He visto que en mi post anterior se repite código. Supongo que esto sería mejor y que puedes agregar a cada una de las clases que tengas:
Código Delphi
[-]
clase TMatematica1
...
private
MiLog : Log
procedure NuevaLineaLog(s: string)
...
public
procedure HacerAglo;
procedure AsignaLog(Log : TLog)
end
procedure TMatematica1.AsignaLog(Log : TLog)
begin
MiLog := Log;
end
procedure NuevaLineaLog(s: string)
begin
if Assigned(MiLog) then MiLog.NuevaLinea('Matematica1 esta HaciendoAlgo');
end
procedure TMatematica1.HacerAglo;
var
Resultado : Integer;
begin
NuevaLineaLog('Matematica1 esta HaciendoAlgo');
...
NuevaLineaLog('Resultado de Matematica1: ' + IntToStr(Resultado));
end