function TfrmJMMain.FreeUIForm: Boolean;
begin
if ( PfrmUIForm <> nil )
and Assigned(PfrmUIForm^) then
begin
PfrmUIForm^.Close;
if Assigned(PfrmUIForm^) then
begin
Result := False;
Exit;
end;
end;
Result := True;
PfrmUIForm := nil;
end;procedure TfrmJMMain.UIFormDock;
Var
DockPos : TRect;
begin
{注:停靠的窗体要比pnlUIfrm宽加8高加26}
if ( PfrmUIForm <> nil )
and Assigned(PfrmUIForm^) then
begin
DockPos.Top := 0;
DockPos.Left := 0;
DockPos.Right := pnlUIfrm.Width; //pnlUIfrm为Panel名称
DockPos.Bottom := pnlUIfrm.Height;
PfrmUIForm^.Dock(pnlUIfrm , DockPos);
PfrmUIForm^.Show;
end;
end;显示窗体时这样用
if Not Assigned(frmJMBasedProList) then
begin
FreeUIForm;
frmJMBasedProList := TfrmJMBasedProList.Create(application);
PfrmUIForm := @frmJMBasedProList;
UIFormDock;
end;转自过客~
begin
if ( PfrmUIForm <> nil )
and Assigned(PfrmUIForm^) then
begin
PfrmUIForm^.Close;
if Assigned(PfrmUIForm^) then
begin
Result := False;
Exit;
end;
end;
Result := True;
PfrmUIForm := nil;
end;procedure TfrmJMMain.UIFormDock;
Var
DockPos : TRect;
begin
{注:停靠的窗体要比pnlUIfrm宽加8高加26}
if ( PfrmUIForm <> nil )
and Assigned(PfrmUIForm^) then
begin
DockPos.Top := 0;
DockPos.Left := 0;
DockPos.Right := pnlUIfrm.Width; //pnlUIfrm为Panel名称
DockPos.Bottom := pnlUIfrm.Height;
PfrmUIForm^.Dock(pnlUIfrm , DockPos);
PfrmUIForm^.Show;
end;
end;显示窗体时这样用
if Not Assigned(frmJMBasedProList) then
begin
FreeUIForm;
frmJMBasedProList := TfrmJMBasedProList.Create(application);
PfrmUIForm := @frmJMBasedProList;
UIFormDock;
end;转自过客~
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货