Thema: Delphi Listview OwnerData

Einzelnen Beitrag anzeigen

lucius

Registriert seit: 6. Okt 2005
Ort: Niederlande
215 Beiträge
 
Delphi 7 Enterprise
 
#1

Listview OwnerData

  Alt 17. Nov 2005, 14:39
Hallo Leute,

Ich habe eine Listview die wird mit 600 Eintraegen gefuehlt, die Property OwnerData steht auf false.
Ich muss OwnerData auf false setzen weil sonst die Eintraege nicht zu sehen sind.
Jetzt geht mir das befuellen der Liste zu langsam +- 3 Sekunden, ich moechte aber das das befuellen so schnell wie moeglich geht, ich erreiche das unterandern durch OwnerData auf true zu setzen aber dan sind die Eintraege nicht mehr zu sehen.
Hier der Code der die Liste befuellt.
Delphi-Quellcode:
procedure THaupt.Button1Click(Sender: TObject);
Var
i: Integer;
listitem : TListItem;
z: TStrings;
begin
if FileExists(label17.caption + 'rss.xml') then
 Begin
 Listview.Clear;
 Listbox1.Clear;
 Listbox2.Clear;
  SimpleRSS.LoadFromFile(label17.caption + 'rss.xml');
    For i := 0 to SimpleRSS.Items.Count - 1 do
      Begin
      z := CreateStrings(SimpleRSS.Items.Items[i].Description);
      Listbox1.Items.Add(SimpleRSS.Items.Items[i].Link);
      listitem := listview.Items.add;
      listitem.Caption := IntToStr(Succ(i));
      z.Values['Added'] := Parse(' ', z.Values['Added'], 1);
      listitem.SubItems.add(z.Values['Added']);
      listitem.SubItems.add(z.Values['Category']);
      listitem.SubItems.add(SimpleRSS.Items.Items[i].Title);
      listitem.SubItems.add(z.Values['Size']);
      listitem.SubItems.add(z.Values['Status']);
      listitem.SubItems.add(z.Values['Speed']);
      Listbox2.Items.add(z.Values['Download']);
      Groupbox2.Caption := 'Aantal torrents: ' + IntTostr(SimpleRSS.Items.Count);
      z.Free;
      Listview.Invalidate;
      end;
 end;
end;
Was kann/muss ich aendern damit ich OwnerData auf true setzen kann oder die Befuellung schneller geht?
Oja Listview.Items.BeginUpdate, EndUpdate hat keinen Zweck, schon probiert.
Danke im voraus.

Gruss Lucius.
  Mit Zitat antworten Zitat