关于如何在TPageContrl中动态创建TabSheet?(50分)

  • 主题发起人 主题发起人 阿土哥
  • 开始时间 开始时间

阿土哥

Unregistered / Unconfirmed
GUEST, unregistred user!
新建的TabSheet中要包括RichEdit。
相当于一个可以动态添加每页的记事本。
我的代码如下:
...
with TTabSheet.Create(self) do
begin
PageControl:= PageControl1;
Caption := 'Demo';
PageControl.ActivePage:=PageControl.Pages[Num-1];
end;
...
但是其中不知如何添加RichEdit
多谢各位了。
 
var
Tab: TTabSheet;
Rich: TRichEdit;
begin
Tab := TTabSheet.Create(self);
Tab.PageControl:= PageControl1;
Tab.Caption := 'Demo';
PageControl1.ActivePage := Tab;
Rich := TRichEdit.Create(Self);
Rich.Parent := Tab;
Rich.Align := alClient;
end;
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ComCtrls;

type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
PageControl1: TPageControl;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
Num:integer;

implementation

{$R *.DFM}

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Num:=Num+1;
with TTabSheet.Create(self) do
begin
PageControl:= PageControl1;

with TRichEdit.Create(self) do
begin
parent:=PageControl.Pages[Num-1];
end;

Caption := 'Demo';
PageControl.ActivePage:=PageControl.Pages[Num-1];
end;


end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Num:=0;
end;

end.
 
EASY
示例代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
ts: TTabSheet;
re: TRichEdit;
begin
ts := TTabSheet.Create(self);
with ts do
begin
PageControl:= PageControl1;
Caption := 'Demo';
PageControl.ActivePage:=PageControl.Pages[0];
re := TRichEdit.Create(ts);
with re do
begin
Parent := ts;
Visible := True;
end;
end;

end;

end.
 
可以结束讨论了
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部