工程中的非主窗体(设计时已有,运行时根据需要Create)在CLOSE后,是否自动释放自己及其上的对象(事先摆放好的)?如果需要释放应该如何写,写在什么事件中?

  • 主题发起人 于小澜
  • 开始时间

于小澜

Unregistered / Unconfirmed
GUEST, unregistred user!
工程中的非主窗体(设计时已有,运行时根据需要Create)在CLOSE后,是否自动释放自己及其上的对象(事先摆放好的)?如果需要释放应该如何写,写在什么事件中?(8分)<br />
 
从理论上讲应该是自动释放的,
反正我从来没有释放过
好像没有问题
要不你在form1.afterclose里面加上form1.free试试
 
一般情况下会自动释放,除非该窗口程序运行出现错误,而其它部分运行正常。
因为该窗口作为其上控件的载体,容器不存在了,其控件也不可能存在。
如想自己过过瘾,人工释放代码如下:
procedure TChildForm.FormClose(...);
begin
with ChildForm do
begin
Vcl1.Free;
Vcl2.Free;
...
end;
Close;
end;
 
处理OnClose事件
Action := caFree;
 
有个同样的帖子?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
920
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
顶部