unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, RzTabs,Unit2;
type
TForm1 = class(TForm)
Page1: TRzPageControl;
procedure btn1Click(Sender: TObject);
private
procedure PageAddForm(mform:TForm;TmFormClass:TClass);
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
begin
PageAddForm(Form2,TForm2);
end;
procedure TForm1.PageAddForm(mform: TForm; TmFormClass: TClass);
begin
application.CreateForm(TForm,TmFormClass);//创建窗体对象
mForm.ManualDock(page1); //设置窗体停靠的容器
mForm.Visible :=true; //这种方法的效果比用 show的效果要好一些
page1.ActivePageIndex :=page1.PageCount-1;
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, RzTabs,Unit2;
type
TForm1 = class(TForm)
Page1: TRzPageControl;
procedure btn1Click(Sender: TObject);
private
procedure PageAddForm(mform:TForm;TmFormClass:TClass);
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
begin
PageAddForm(Form2,TForm2);
end;
procedure TForm1.PageAddForm(mform: TForm; TmFormClass: TClass);
begin
application.CreateForm(TForm,TmFormClass);//创建窗体对象
mForm.ManualDock(page1); //设置窗体停靠的容器
mForm.Visible :=true; //这种方法的效果比用 show的效果要好一些
page1.ActivePageIndex :=page1.PageCount-1;
end;
end.
本文介绍了如何在Delphi中使用TRzPageControl动态添加和显示窗体。通过调用PageAddForm方法,创建TForm2类的实例并将其手动停靠到PageControl的最后一个页面,实现自工作栏的功能。点击按钮btn1即可触发此过程。
7432

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



