//动态创建窗体和释放窗体
{
在Delphi中窗体是TForm类的子类,在程序运行过程中,可以动态创建这个类的实例对象。
首先声明一个窗口对象,然后调用TForm类的Create方法创建对象。
Constructor Create(AOwner:TComponent);
AOwner 窗口的拥有者
可以调用 Show或者ShowModal方法将窗口显示 出来
最后用 Free方法释放窗体资源。
创建2个窗体
form1
form2 这个窗体用来调用的
}
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
// Application.CreateForm(TForm2, Form2);把此句删除 了
Application.Run;
end.
//-------------------------------------------------------
implementation
uses Unit2;//引用Unit2
{$R *.dfm}
//这和form2.show有什么先进的地方吗?
procedure TForm1.Button1Click(Sender: TObject);
var
Form2:Tform2;
begin
Form2:= TForm2.Create(nil);
try
Form2.ShowModal;
finally
Form2.Free;
end;
end;
//完成 -> 在制作比较在的程序时,用动态创建窗体的方法节省内存空间。