TreeNode.Delete是否自动释放Data分配的内存?(100分)

  • 主题发起人 主题发起人 eyangyj
  • 开始时间 开始时间
E

eyangyj

Unregistered / Unconfirmed
GUEST, unregistred user!
我的TreeView中每个TreeNodede的Data分配了内存,不知道TreeNode.Delete是否自动
释放Data分配的内存?还有就是整个TreeView的全部节点怎么删除,我无论用GetNext还是用
Items中的下标循环都出现异常
 
Data 必须手工释放
 
当然不会释放,data是一个指针,他指向的内存是你自己申请的,当然要你自己释放的
删除全部节点,如下
anode:=treeview1.items.getfirstnode;
while anode<>nil do begin
if anode.data<>Nil then try free(anode.data) except end;
anode:=anode.getnext;
end;
treeview1.clear;
先释放所有的data,然后清空就行了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部