如何在一个窗体中打开另一个窗体(100分)

  • 主题发起人 主题发起人 prominent
  • 开始时间 开始时间
P

prominent

Unregistered / Unconfirmed
GUEST, unregistred user!
使用什么函数呢
 

Form2.Show;
 
一般的窗体之间打开
用FORM.SHOW就行了
但是如果程序在动态创建一个窗体,并显示它,就不是这样子了,
定义一个窗体对象,再打开它
var
form1 : tform;
form1 := tform.create(nil);
//tform 是你要定义的父类对象
form1.show;
///这句有时不用也行,用其它方法也可以
 
模态的是Form2.ShowModel
非模态的是Form2.Show
不过要先Uses Form2
 
例:在Form1中打开Form2
1.构建 Form2:=TForm2.Create(Self);
2.设置父窗体 Form2.Parent:=Self;
3.显示 Form2.Show;
 
最后还有要uses unit2;
 
两种方法:
if not assigned(from2) then
begin
form2 := Tform2.creat;
end;
form2.show;
或者
form2 := Tform2.creat;
try
form2.showmodal;
finally
freeandnil(form2);
end;
 
模态的是Form2.ShowModel
非模态的是Form2.Show
不过要先Uses unit2
 
建议在类方法中打开
class procedure ShowFrom;
var
active:Tform
begin
active:= Tfrom1.Create(Application);
active.Show;
end;
 
application.create(Tfrom1,from1);
如果打开子窗体
然后关闭窗体
action:=cafree;在from1onclose事件中
 
后退
顶部