Delphi 如何在TPageControl中“插入”新页面

Delphi 如何在TPageControl中“插入”新页面,delphi,delphi-2010,Delphi,Delphi 2010,在TPageControl中“插入”页面的最佳方法是,如果我已经有很多页面充满了控件?假设我想在TabSheet1之前插入一个新页面 谢谢 更新:在设计时 你可以试试这个 procedure TForm13.Button1Click(Sender: TObject); Var tabSheet: TTabSheet; AComponent: TComponent; aIndex: Integer; begin aIndex:=-1; AComponent := F

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

谢谢

更新:在设计时

你可以试试这个

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;
更新

在Designtime中,必须将PageIndex属性设置为选项卡Sheet1的PageIndex

再见。

右键单击页面控件,然后单击“新建页面”


然后,设置PageIndex属性,将新页面放置在您想要的位置。

该示例中有很多代码。真正回答这个问题的部分是最后一行,PageIndex被分配了一个新的值。我应该说是在设计时插入。也许我应该修改我的问题?我就是这么想的。好的-无论如何,谢谢你的代码。如果这不是一个教科书上关于如何错误使用缩进和空格来降低代码可读性的例子,我会投票支持这个答案。所以请修正它,Mghie。这是一个维基。