自己写的demo, 备忘!
unit Unit6;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, Unit7, RzTabs;
type
TForm6 = class(TForm)
ToolBar1: TToolBar;
ToolButton1: TToolButton;
procedure FormCreate(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
FPDI: boolean;
FPageControl: TRzPageControl;
{ Private declarations }
public
constructor Create(AOwner: TComponent); override;
function CreatePageControl: TRzPageControl;
procedure ControlClose(Sender: TObject; var AllowClose: Boolean);
property PDI: boolean read FPDI write FPDI;
property PageControl: TRzPageControl read FPageControl write FPageControl;
end;
var
Form6: TForm6;
implementation
{$R *.dfm}
procedure TForm6.ControlClose(Sender: TObject; var AllowClose: Boolean);
begin
AllowClose := True;
end;
constructor TForm6.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FPDI := True;
// FPDI := False;
end;
function TForm6.CreatePageControl: TRzPageControl;
begin
result := TRzPageControl.Create(self);
result.Parent := self;
result.Align := alClient;
result.ShowCloseButtonOnActiveTab := True;
result.OnClose := ControlClose;
result.ShowMenuButton := True;
// result.TabOrientation := toBottom;
result.UseGradients := False;
result.TabStyle := tsCutCorner;
result.Show;
end;
procedure TForm6.FormCreate(Sender: TObject);
begin
if FPDI then
begin
self.FormStyle := fsNormal;
FPageControl := CreatePageControl;
end;
end;
procedure TForm6.ToolButton1Click(Sender: TObject);
var
vSheet: TRzTabSheet;
vForm: TForm;
begin
vSheet := TRzTabSheet.Create(self);
vSheet.PageControl := self.PageControl;
PageControl.ActivePage := vSheet;
vForm := TForm7.Create(vSheet);
vForm.FormStyle := fsNormal;
vForm.BorderStyle := bsNone;
vForm.Parent := vSheet;
vForm.Align := alClient;
vForm.Show;
vSheet.Caption := vForm.Name;
end;
end.