如何动态创建Form? (100分)

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

hhero

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大虾,在下初来乍到,不懂规矩,请多多指教!
想做一个窗体摸板或生成向导,不知如何动态创建Form,并保存为*.PAS,*.DFM。
 
try
Form1:=TForm1.Creat(Applicaton);
...
finally
Form1.free;
.....
end
 
你自己制定好一个Form表单,然后在项目文件中的将 Application.CreateForm(TForm1, Form1);
类似的那一行去掉,Form为你的表单名,你看哪一个相同就去掉它.
然后在你要生成表单的地方如下写:
if not Assigned(FrmMould) then
FrmMould:=TFrmMould.Create(Application);
FrmMould.Show
即可,这儿假定你的表单名为FrmMould.你的表单本身就会保存成文件,所以不用担心保存的
问题.
 
在你想建立窗口的地方加上
Application.CreateForm(TForm1, Form1);
你的窗口类名,文件明
 
你可以把它定义为模式窗体;
然后定义一个窗体变量如:
frm_temp:=tfrm_temp.create(application);
frm_temp.showmodal;
frm_temp.free;
 
在你的工程文件中把
Application.CreateForm(TForm1, Form1);
去掉,
第二,在需要动态创建窗口的地方加入以下代码
var
Form1:TForm1;
begin
if Form1=nil then
begin
try
Form1:=TForm1.create(nil);
Form1.showmodal;
finally
Form1.free;
end;
end;

end;

 
实在对不起,我把问题表述错了。
应该是“如何动态创建FORM,并保存为*.PAS,*.DFM'.
感谢各位的大力支持,再次致谢!
 
动态创建窗体,不能保存动态创建的结果窗体!
 
那要是想在那个动态创建的form上来家上若干空间呢?
 
多人接受答案了。
 

Similar threads

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