如何动态创建释放窗体? (50分)

  • 主题发起人 主题发起人 hxy2002
  • 开始时间 开始时间
H

hxy2002

Unregistered / Unconfirmed
GUEST, unregistred user!
如何动态创建释放窗体?
 
有没有知道。
 
t: TForm;
创建窗体
t := TformA.Create(self);
t.visible := true;
TformA : 要创建的窗体类。

释放窗体
t.Free

你是要这样吗?
 
frmmain:Tfrmmain;
if assigend(frmmain) then
frmmain.showmodal;
释放:frmmain:=nil;
 
var
Form: TForm;
begin
Form := TForm.Create(Self);
Form.ShowModal;
{... 关于窗体的其他处理...}
Form.Free;
Form := nil;
end;
 
上面是模态的处理,
非模态: TFormA.Create(Self).show;
 
还是应该用 Application.CreateForm(TFromA, MyForm);
 
Application.CreateForm(TMyFrom, MyForm);

MyForm.Free;
 
var
Form: TForm;
begin
if assigend(frmmain) then
begin
Application.CreateForm(TFrom, Form);
end;
Form.ShowModal;
{... 关于窗体的其他处理...}
Form.Free;
Form := nil;

end;

 
接受答案了.
 
后退
顶部