动态创建PageControl、TabSheet

var
T : TTabSheet;
P : TPageControl;
begin
// Create the PageControl
// need to reference the page control so we need a reference to it.

P := TPageControl.Create(application);
with P do begin
Parent := Form1; // set how controls it.
Top := 30;
Left := 30;
Width := 200;
Height := 150;
end; // with TPageControl

// Create 3 pages
T := TTabSheet.Create(P);
with T do begin
Visible := True; // This is necessary or form does not repaint
// correctly
Caption := 'Page 1';
PageControl := P; // Assign Tab to Page Control
end; // with

T := TTabSheet.Create(P);
with T do begin
Visible := True; // This is necessary or form does not repaint
// correctly
Caption := 'Page 2';
PageControl := P; // Assign Tab to Page Control
end; // with

T := TTabSheet.Create(P);
with T do begin
Visible := True; // This is necessary or form does not repaint
// correctly
Caption := 'Page 3';
PageControl := P; // Assign Tab to Page Control

end; // with

// Create 3 buttons, 1 per page
with tbutton.create(application) do begin
Parent := P.Pages[0]; // Tell which page owns the Button
Caption := 'Hello Page 1';
Left := 0;
Top := 0;
end; // with

with tbutton.create(application) do begin
Parent := P.Pages[1]; // Tell which page owns the Button
Caption := 'Hello Page 2';
Left := 50;
Top := 50;
end; // with

with tbutton.create(application) do begin

Parent := P.Pages[2]; // Tell which page owns the Button
Caption := 'Hello Page 3';
Left := 100;
Top := 90;
end; // with

// This needs to be done or the Tab does not sync to the
// correct page, initially. Only if you have more then
// one page.
P.ActivePage := P.Pages[1];
P.ActivePage := P.Pages[0]; // page to really show
end;

posted on 2004-11-11 21:36  flanker27  阅读(1535)  评论(0)    收藏  举报