Autor Beitrag
JanHH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46
Erhaltene Danke: 1



BeitragVerfasst: Sa 28.08.04 02:06 
Hi,

wenn man beispielsweise eine StringList, die zu einem Memo-Feld gehört, Zeilenweise mit Inhalt füllt, dann dauert das relativ lange (also z.b. 2000 Zeilen einzeln hinzufügen), weil nach jeder hinzugefügten Zeile das ganze Memo neu gezeichnet wird. Dieses Problem kann man dadurch beheben, dass man die Zeilen einer internen StringList hinzufügt, die nix mit dem Memo-Feld zu tun hat, und dann die ganze StringList einmal komplett mit sowas wie Memo1.Lines := myStringList; zuweist.

Mit einer ListView funktioniert etwas derartiges nun anscheinend nicht, man muss die Items einzeln hinzufügen, entsprechend lange kann das bei einer eher langen Liste dauern.

Aber irgendwie bin ich mir sicher, dass es irgendwie besser geht. Nur wie? Tipps?

Gruß
Jan
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 28.08.04 02:33 
Dann unterbinde das Neuzeichnen doch einfach:
ausblenden Delphi-Quelltext
1:
2:
BeginUpdate
EndUpdate
JanHH Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46
Erhaltene Danke: 1



BeitragVerfasst: Sa 28.08.04 05:54 
Hm. Die Delphi-Hilfe sagt auch was über diese Funktionen, aber bei welchem Objekt ruf ich die denn auf? Zumindest die ListView und die Form kennen sowas nicht.
Keldorn
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 2266
Erhaltene Danke: 4

Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
BeitragVerfasst: Sa 28.08.04 09:20 
Hallo

Beginupdate und endupdate ist immer bei den items-Eigenschaften dabei.

Mfg Frank

_________________
Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Sa 28.08.04 10:08 
Hallo!

Du rufst bevor du die eigentlichen Items der Liste hinzufügst rufst du einfach die Methode
ausblenden Delphi-Quelltext
1:
Items.BeginUpdate;					

auf. Wenn du dann mit dem hinzufügen der Items fertig bist rufst du
ausblenden Delphi-Quelltext
1:
Items.EndUpdate;					

auf.

Gruß
Tino
JanHH Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46
Erhaltene Danke: 1



BeitragVerfasst: Sa 28.08.04 17:53 
Dankz.

Jan