我在TreeView控件添加节点时,添加500个节点:
...
for i:=0 to 499 do
begin
new(p);
TreeView1.Items.AddChildObject(nil,inttostr(i),p);
end;
{p指向一个结构}在最后释放节点时:
for i:=0 to TreeView1.Items.count-1 do
begin
if TreeView1.Items[i].Data<>nil then
dispose(TreeView1.Items[i].Data);
end;
TreeView1.Items.Clear;
释放的速度很慢,如果节点数再多,速度太慢,请教有没有方法提高释放效率?
...
for i:=0 to 499 do
begin
new(p);
TreeView1.Items.AddChildObject(nil,inttostr(i),p);
end;
{p指向一个结构}在最后释放节点时:
for i:=0 to TreeView1.Items.count-1 do
begin
if TreeView1.Items[i].Data<>nil then
dispose(TreeView1.Items[i].Data);
end;
TreeView1.Items.Clear;
释放的速度很慢,如果节点数再多,速度太慢,请教有没有方法提高释放效率?
解决方案 »
- 为什么修改DBGRID内的数值,数据库里的值没有改变呢!
- 这样的界面是如何做得
- 我现在有一个问题,我现在引用一个控件,但它一会会弹出错误信息。我能否阻止消息弹出?请大家帮助。
- Fast Report 2.5 打印系统日期问题
- 三问: 判断字段类型及大小? DBgrid编辑? QR报表动态分页?
- 急寻期货或股票软件编程高手!!
- 本地批量数据 问题(C/S)
- ####公历、农历互转的算法和源代码####
- 原创:原子钟对时器1.0 与internet原子钟校对计算机时间。
- 如何在dll里动态的建一个数据库以及表?
- 请问怎样才能把日期型转化成字符串型?
- 遍历了FORM上的组件后,又怎么对某个组件进行操作?
在treeview释放时,会帮助清空的。
TreeView1.Items.BeginUpdate;
...
...
...
建好以后
TreeView1.Items.EndUpdate;不要一次性把所有的节点数据都加进去,展开的时候再加