在设计状态时,在PageControl控件上右键可以弹出菜单,用菜单的New Page项可以添加TabSheet页,我想知道New Page在PageControl控件里面所对应的方法或事件在哪里?

解决方案 »

  1.   

    procedure TForm1.BitBtn1Click(Sender: TObject);
    var
      i: Integer;
    begin
      with PageControl1 do
        for i := 0 to 9 do
          with TTabSheet.Create(Self) do
          begin
            PageControl := PageControl1;
            Pages[i].TabVisible := (i mod 2 = 0);
            Caption := 'PageIndex: ' +
            IntToStr(Pages[i].PageIndex) + '  TabIndex: ' +
              IntToStr(Pages[i].TabIndex);
          end;
    end;
      

  2.   

    你自己加个popupmenu,再加个菜单项:new page,然后在这个菜单中实现 动态添加页的代码就行了,代码则类似于楼上的就可以了。
      

  3.   

    但是我查遍了TPageControl控件代码也没找到有popupmenu呀?
      

  4.   

    你自己加个popupmenu,再加个菜单项:new page,然后在这个菜单中实现 动态添加页的代码就行popupmenu呀是另外的控件 
    和mianmenu挨着的哪一个就是了
      

  5.   

    楼上的大哥,我晓得。我只是想知道TPageControl是怎么把那个New Page加到菜单里去的。我在TPageControl源码里也没找到哇?
      

  6.   

    停停停,各位真不要搞错意思,我只是想知道TPageControl是怎么把那个New Page功能加到菜单里去的
      

  7.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      ComCtrls, Menus;type
      TForm1 = class(TForm)
        PopupMenu1: TPopupMenu;
        Add1: TMenuItem;
        PageControl1: TPageControl;
        TabSheet1: TTabSheet;
        procedure Add1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Add1Click(Sender: TObject);
    var
      i: Integer;
    begin
      with PageControl1 do
        for i := 0 to 9 do
          with TTabSheet.Create(Self) do
          begin
            PageControl := PageControl1;
            Pages[i].TabVisible := (i mod 2 = 0);
            Caption := 'PageIndex: ' +
            IntToStr(Pages[i].PageIndex) + '  TabIndex: ' +
              IntToStr(Pages[i].TabIndex);
          end;
    end;
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      PageControl1.popupMenu:= PopupMenu1; 
    end;end.