内存泄漏一问(100分)

  • 主题发起人 主题发起人 njcw666
  • 开始时间 开始时间
N

njcw666

Unregistered / Unconfirmed
GUEST, unregistred user!
我用delphi写了一个简单的程序,又程序一开始由delphi生成了几个form,用show(),hide()
在其中切换,当我用close关掉一个显示form(非第一个生成的)时,发现程序没有关如何解决?
 
这个问题我也遇到过,你在生成不同的FORM时可以把它们的HANDLE存入到不同的变量中(如组),然后操作就没有问题了。
 
用Screen的Formcount的属性来篇历窗口
 
加入下面的:
procedure TFrm01.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;

另外:在一个主窗口中调用frm01时候:
最好是这样:
Frm01 := TFrm01.Create(Application);
Frm01.Show;

/////////////////
然后在options中将后来要现实的窗口取消自动创建(除了主窗口)。
 
TFrm01 是主窗口吗?是否在每个formclose()中均加 Action := caFree;
 
多人接受答案了。
 
后退
顶部