让窗体显示在tabsheet(100分)

C

czkun

Unregistered / Unconfirmed
GUEST, unregistred user!
我在主窗体上建立一个pagecontrol,增加两二tabsheet,有没有办法选择不同的tabsheet把另外两个窗体分别加载进来呢?
有点像网页中的框加嵌入,
快点指点迷津哦
 
真奇怪 ,为什么要在tabsheet上加窗体呢?
直接加控件不行吗?

非要这样的话
提供一个变通的方法
点tabsheet1 显示form1
点tabsheet2 显示form2

procedure TFrmMain.PageControl1Change(Sender: TObject);
begin

if PageControl1.ActivePage=TabSheet1 then

begin

Form1:=TForm1.Create(nil);
try
Form1.ShowModal;
finally
form1:=nil;
Form1.Free;
end;

end;

if PageControl1.ActivePage=TabSheet2 then

begin

Form2:=TForm2.Create(nil);
try
Form2.ShowModal;
finally
form2:=nil;
Form2.Free;
end;

end;

end;
 
pagecontrol的TabSheet上加一个Panel,在窗体的底层也加一个panel,
在打开主窗体时
子窗体名.Panel.Dock(主窗体,BoundsRect);
 
Form2对应Unit2,Form3对应Unit3,测试通过....
uses Unit2,unit3;
{$R *.dfm}

procedure TForm1.FormShow(Sender: TObject);
begin

Form2.Show;
Form2.Parent := TabSheet1;
Form2.Align := alClient;
Form3.Show;
Form3.Parent := TabSheet2;
Form3.Align := alClient;
end;
 

Similar threads

D
回复
0
查看
740
DelphiTeacher的专栏
D
D
回复
0
查看
742
DelphiTeacher的专栏
D
D
回复
0
查看
591
DelphiTeacher的专栏
D
D
回复
0
查看
749
DelphiTeacher的专栏
D
D
回复
0
查看
492
DelphiTeacher的专栏
D
顶部