Einzelnen Beitrag anzeigen

Benutzerbild von TKC
TKC

Registriert seit: 21. Apr 2004
Ort: Tuningen
367 Beiträge
 
Delphi XE2 Enterprise
 
#18

Re: Performanceproblem mit ca. 30000 Listboxeinträgen

  Alt 12. Mai 2005, 23:53
in solchen Fällen führe ich immer eine Zeitmessung der einelnen Schleifen durch !

Damit wird schnell klar wo die meiste Zeit verbraten wird ....



Delphi-Quellcode:
  istart:=GetTickCount;

  for x := 0 to 409 do
    begin
      (FindComponent('Label' + IntToStr(x + 1)) as TLabel).Caption :=IntToStr(Counte[x]);
    end;

 ShowMessage(IntToStr(GetTickCount-istart));
Ergibt bei mir beim 1. mal 157ms ... alle andern funktionen liegen bei 0ms !!

Das Problem ist aber nicht die inttostr Anweisung, sondern die Wertzuweisung an die Labels.

Die Lösung besteht darin das die Eigenschaft AutoSize der gesamten Labels auf False gesetz werden muss !!!

Ergebnis der Messung dannach : 16ms

Also ein gutes 10tel der Zeit !
  Mit Zitat antworten Zitat