如何在TPageControl中"插入"新页面

vol*_*vox 0 delphi delphi-2010

如果我已经有很多页面装满了控件,那么在TPageControl中"插入"页面的最佳方法是什么?假设我想在TabSheet1之前插入一个新页面.

谢谢.

更新:在设计时.

Wou*_*ick 13

右击上的PageControl,并点击New Page

之后,设置PageIndex属性以将新页面放置在您想要的位置.


RRU*_*RUZ 9

你可以试试这个

procedure TForm13.Button1Click(Sender: TObject);
Var
   tabSheet: TTabSheet;
   AComponent: TComponent;
   aIndex: Integer;
begin
   aIndex:=-1;

   AComponent := FindComponent('TabSheet1');
   if Assigned(AComponent) then
     if AComponent is TTabSheet then
       aIndex := TTabSheet(AComponent).PageIndex; //get the index of the 'TabSheet1'  

   tabSheet := TTabSheet.Create(PageControl1);
   tabSheet.PageControl := PageControl1;
   tabSheet.Caption := 'My TabSheet'+IntToStr(PageControl1.PageCount);
   if aIndex>-1 then
     tabSheet.PageIndex := aIndex; //Set the index of the new TabSheet
end;
Run Code Online (Sandbox Code Playgroud)

更新

在Designtime中,必须将PageIndex属性设置为TabSheet1的PageIndex.

再见.