我的PageControl 有4个页面,第一个页面的标签是隐藏的,2,3,4三个页面的标签是可见的。初始的活动页面是 第一个。
我的目的是 通过TabIndex属性设置新的活动页面,如下:
    Pagecontrol1.TabIndex := 用户选择的一个页面;
,然后删除该活动页面,如下:
    Pagecontrol1.Pages[pctMain.ActivePageIndex.Free;
。但是每次删除的页面都是 Pages[0],也就是说ActivePageIndex总是返回0,而不管我选择了哪个页面。
我可以确定的是TabIndex每次都不为0,但为什么ActivePageIndex不返回当前活动的页面呢?谁知道?发表以下意见吧!谢谢!

解决方案 »

  1.   


        Pagecontrol1.TabIndex := 用户选择的一个页面;//次句并没有说明你所要ActivePageIndex是当前页面。
    Pagecontrol1.ActivePageIndex;=用户选择的一个页面//看看这样如何哩!
      

  2.   

    当前活动的页面应该用Pagecontrol1.ActivePageIndex属性进行设置,而不是Pagecontrol1.TabIndex
      

  3.   

    Pagecontrol1.ActivePageIndex;=2,不可能不行!
      

  4.   

    TO: 各位
    因为有隐藏了标签的页面,所以TabIndex和ActivePageIndex的值不一样。现在用户选择了第2个可见页面,那么可能TabIndex=2,而ActivePageIndex=3或4或其它,我现在可以确定用户选择的是第几个活动的页面,但是我不知道ActivePageIndex等于多少,我想free掉用户选择的这个页面,当然要用TabIndex啦!各位,还有什么意见吗?