请问模式窗体的ModalResult=mrOK,窗体关闭后是否已经从内存中释放?
模式窗体关闭后窗体是否要free;
还请大家探讨一下关于窗体释放的问题。
问题点数:50、回复次数:9Top
1 楼chechy(www.qdocuments.net)回复于 2001-11-30 15:22:27 得分 10
没有,除非你在OnClose事件中加
Action:=caFree;
或者外部调用Free。Top
2 楼cobi(我是小新)回复于 2001-11-30 15:44:40 得分 5
同意老大的,如果你使用
if not Assigned(form1) then
application.createform(Tform1,form1)
创建窗体是比较保险的Top
3 楼chengwei_xj(ylxz.blogbus.com)回复于 2001-11-30 15:58:09 得分 5
那么
Form1:=Tform1.create(apllication);
application.Create(TForm1,Form1)
有什么区别啊!Top
4 楼zfmich()回复于 2001-11-30 16:03:28 得分 5
好象会自己释放吧。你试试不创建会有什么不同。Top
5 楼taxi(当时明月在,曾照彩云归)回复于 2001-11-30 16:22:08 得分 5
with TForm.Create(self) do
begin
ShowModal;
Free;
end;Top
6 楼redwoodnymph(new)回复于 2001-11-30 16:23:45 得分 5
那么
Form1:=Tform1.create(apllication);
application.Create(TForm1,Form1)
有什么区别啊!
我觉得没区别,
没有,除非你在OnClose事件中加
Action:=caFree;//
加上Form1:=nil//不加,Assigned(form1)=true;
或者外部调用Free。Top
7 楼zswang(伴水清清)(专家门诊清洁工)回复于 2001-11-30 16:29:50 得分 5
with TForm.Create(Self) do try
ShowModal;
finally
Free;
end; Top
8 楼zbz(黑颈)回复于 2001-11-30 16:34:14 得分 5
进来学习Top
9 楼zfmich()回复于 2001-11-30 16:47:48 得分 5
不好意思,说错了。
会自己释放,当还是要自己创建。
if not Assigned(LogForm) then
LogForm := TLogForm.Create(self);
if LogForm.ShowModal = mrOk then
begin
...
end;
Top




