【发布时间】:2011-04-11 12:38:04
【问题描述】:
我在表单上有一个 TMemo,它允许用户输入项目列表。人们可以在这里输入许多项目。当他们点击保存时,TMemo 的内容被选中,然后被添加到数据库中。
我在 TStringList 中有第二个列表,我循环并检查它的任何项目是否包含在 TMemo 中。
简而言之,它看起来像这样
....
//slItems = TStringList
//mItems = TMemo
for i := slItems.Count -1 downto 0 do
begin
if mItems.Lines.IndexOf(slItems[i]) = -1 then
slItems[i].Delete;
end;
----
所以stringlist循环了,查看memo中是否存在,如果没有从list中删除。
但是,如果有 200 多个项目,这开始变慢很多,而 1000 则变得非常糟糕。
搜索 TMemo 最快的方法是什么?
【问题讨论】:
-
@Marco 这里没有 TStringList。你到底是什么意思?
-
另一边。如果您使用的是富编辑,那么您可以使用 EM_FINDTEXT。
标签: performance delphi tmemo