使用Raize实现Form嵌入PageControl中

来源:互联网 发布:中国为什么要封锁网络 编辑:程序博客网 时间:2024/06/07 16:48

自己写的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.

原创粉丝点击