Juha Manninen schrieb:
Hi
Shouldn't the BeginUpdate and EndUpdate in TMemo.Lines prevent the GUI
from updating, thus allowing quickly adding many lines?
I made a test app which generates a big amount of random data and has
2 methods to add it to a Memo.
1. uses a temporary StringList and finally calls Assign.
2. adds the strings directly to Memo.Lines between BeginUpdate and EndUpdate.
Method number 1. is about 40 times faster!
Because here (1) the number of entries to add is known in advance,
memory can be pre-allocated (Capacity). Not so when individual strings
are added (2).
The behavior also depends on the widget, whether it stores one text
(string) or multiple lines. A Windows Memo stores text, so that the
fastest solution could be
Memo.Text := StringList.Text;
DoDi
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus