Einzelnen Beitrag anzeigen

Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: FMX Listbox total lahm

  Alt 27. Sep 2011, 12:24
Es scheint exponentiell von der Anzahl der Elemente der Listbox abzuhängen. Versuch es mal mit Begin/Endupdate, ich habe jetzt dabei eine Geschwindigkeitssteigerung um das 250-fache gemessen :

Code:
Listbox alClient (600x400) mit 1000 Elementen = 5223 ms
ListBox alClient (600x400) mit 2000 Elementen = 28809 ms

ListBox alClient (600x400) mit 2000 Elementen Begin/Endupdate = 109 ms
ListBox alClient (600x400) mit 8000 Elementen Begin/Endupdate = 1704 ms
Delphi-Quellcode:
procedure TfrmMain.FormCreate(Sender: TObject);
var
  i : integer;
  dtStart : TDateTime;
begin
  dtStart := Now;
  ListBox1.BeginUpdate;
  for i := 0 to 7999 do
    ListBox1.Items.Add(Format('%8.8d', [i]));
  ShowMessage(Format('%d', [MilliSecondsBetween(Now, dtStart)]));
  ListBox1.EndUpdate;
end;
Ich habe aber nur 32bit runtime. Hast Du vielleicht 64 erstellt? Das kann ich bei mir nicht testen.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat