远行效果:
实现代码:
procedure TfrmMain.OpenForm(Caption,FormClassName:string);
var
i:integer;
sheet:TUniTabSheet;
begin
for i := 0 to pgeMain.PageCount-1 do
begin
if pgeMain.Pages[i].Caption=Caption then
begin
pgeMain.ActivePageIndex:=i;
exit;
end;
end;
sheet:=TUniTabSheet.Create(Self);
sheet.Closable:=True;
sheet.Caption:=Caption;
sheet.PageIndex:=i+1;
sheet.PageControl:=pgeMain;
FCurrentFrame:=TUniFrameClass(FindClass(FormClassName)).Create(Self);
FCurrentFrame.Align:=alClient;
FCurrentFrame.Parent:=sheet;
pgeMain.ActivePage:=sheet;
end;

本文介绍了一种在Delphi中动态创建并加载不同窗体的方法,通过该方法可以在运行时根据需求加载特定的窗体,避免了预先加载所有界面组件带来的性能开销。
664

被折叠的 条评论
为什么被折叠?



