Delphi使用pageControl实现镶嵌窗体
开发时需要把原来的几个功能集中整合到一个窗体,使用frame要重新写,而且一般前端都是继承查询和编辑两个基本窗体框架,好多和后台交互以及界面实现都写好了。这时使用pageControl实现镶嵌窗体,可以不改变基本框架。
procedure TForm5.Button1Click(Sender: TObject);
begin
CreateForm;
end;
procedure TForm5.CreateForm;
var Form : TForm1; TabSheet : TTabSheet;
begin
//查找该标签页是否已经存在
//TabSheet := TTabSheet(self.FindComponent(''));
try
//创建新标签页
TabSheet := TTabSheet.Create(self);
TabSheet.PageControl := pgc1;
TabSheet.Tag := 2;
TabSheet.Align := alClient;
except
FreeAndNil(TabSheet);
Exit;
end;
try
//创建窗口
Form := TForm1.Create(self);
Form.Parent := TabSheet;
Form.BorderStyle := bsNone;
Form.Top := 0;
Form.Left := 0;
Form.Width := TabSheet.Width;
Form.Height := TabSheet.Height;
Form.Align := alClient;
TabSheet.Caption := Form.Caption;
//关联窗体关闭时,执行的函数。
//Form.OnClose := CloseTabSheet;
Form.Show;
except
FreeAndNil(Form);
Abort;
end;
//设置当前的标签页为活动页
pgc1.ActivePage := TabSheet;
end;
procedure TForm5.FormCreate(Sender: TObject);
begin
CreateForm;
end;
最后更新:2017-05-07 08:00:59