Einzelnen Beitrag anzeigen

CCRDude
(Gast)

n/a Beiträge
 
#9

Re: TListView füllen dauert lange - Geht es auch schneller?

  Alt 24. Apr 2007, 14:57
Infos private in der Form, dann virtuell, wie ich schon sagte:

Delphi-Quellcode:
MyListView.OwnerData := true;
MyListView.Items.Count = Length(Infos);

procedure TMyDlg.MyListViewData(Item: TListItem);
begin
   if Item.Index>=Length(Infos)
    then Exit;
   Item.Caption := Infos[Item.Index].str1;
   Item.SubItems.Add(Infos[Item.Index].str2);
   if (Infos[Item.Index].num=mnOne) then begin
      Item.SubItems.Add('One');
      Item.Checked := true;
   end else begin
      Item.SubItems.Add('Two');
      Item.Checked := false;
    end;
end;
Dadurch wird Infos nur noch dann verarbeitet, wenn die GUI die Anzeige verlangt (bzw. Du Funktionen wie sortieren etc. aufrufen würdest).

(PS: VirtualStringTree ist da doch schon eher Overkill, virtuell können auch normale Listen )
  Mit Zitat antworten Zitat