Indikace průběhu a logování

Top 

Seznam témat:

řešení

 

Řešení

Indikátor typu "teploměr" a prostý waitbox

 

var

 Log: TProgress;

 I,N: integer;

begin

 //teploměr

 Log := TProgress.Create('První fáze', 0, 1000000);

 try

   for I := 1 to 1000000 do

     if I mod 10000 = 0 then

       Log.SetProgress(I);

 finally

   Log.Free;

 end;

 //obyčejný waitbox

 Log := TProgress.CreateSimple('Druhá fáze', 'Probíhá déletrvající akce. Prosím, čekejte...');

 try

   for I := 1 to 1000000 do Inc(N);

 finally

   Log.Free;

 end;

 ShowMessage('Hotovo.');

end.

 

Logování na obrozovku s možností tisku či uložení

var

 Log: TProgressLog;

begin

 Log := TProgressLog.Create('Čekejte', 'Probíhá výpočet');

 try

   Log.Write('Fáze 1');

   Log.Write('Fáze 2');

   Log.Write('Fáze 3');

   Log.Write('Fáze 4');

   Log.Finish;

 finally

   Log.Free;

 end;

end.

 

 

Související témata