73)问:PageControl组件好像比TabControl组件功能更强大,它是怎样使用的?

  答:与TabControl相比,PageControl组件的功能确实更加强大,但是却并不复杂。PageControl中的每一个页都是一 个TTabSheet组件,这个组件实际上是一个容器,你可以在上面放置各种控件。每个TTabSheet组件都有自己的属性。

  实际上这里有两层关系。最顶层的是PageControl组件,它负责管理多个TTabSheet组件,而每个TTabSheet组件也管理着放在它上面的组件。

  74)问:PageControl组件有哪些比较重要的属性呢?

  答:ActivePage这个属性显示当前被选中的页,它也可以用来切换页。

  MultiLine属性用来确定当页一行显示不下时是否显示到下一行。缺省值False表示在一行无法显示完时,在行的右边自动出现一个双向箭头,可以用来移动页。缺省值为False。

  TabHeight属性用来设置页的高度。缺省值0表示页的高度将自动适应页上文本的高度。

  TabWidth属性用来设置页的宽度。缺省值0表示页的宽度将自动适应页上文本的宽度。

  TabPosition这个属性的值为tpTop时,页将放在TabControl组件的上面,而为tpBottom时将显示在下面。

  此外,还有运行时态属性:

  Pages这个只读属性是PageControl组件上所有的页组成的数组。

  PageCount这个属性返回PageControl组件上的页数。

  75)问: PageControl的每一页都是一个TTabSheet组件,那TTabSheet有些什么属性呢?

  答:TabVisible 这个属性用来屏蔽某一页的显示。也说是说,它的值为False的时候PageControl组件将不显示这个页了,但是这个页还存在,你还可以把这个属性设置为True来恢复它的显示。在程序运行期间不能删除页,只能屏蔽页的显示。

  PageIndex是页的索引号,

  此外,还有运行时态属性。

  PageControl属性返回该页所在的PageControl组件。

  TabIndex属性返回该页在所有可见页中的索引号。

  因为在程序运行时是不能删除页的,所以PageIndex索引号是固定不变的。但是页可以被屏蔽,当没有页被屏蔽时,TabIndex与 PageIndex完全相同;当有页被屏蔽时,TabIndex就与PageIndex就不同了。TabIndex是这一页在所有可见页中的索引号,也就 是说,第一个可见页的TabIndex是0,第二个可见页的TabIndex是1,以此类推。

  76)问:能设计一个例子让我更好的理解一下它们吗?

  答:好的 ,首先在TabControl组件的页面上放置一个编辑框组件。

  然后在PageControl组件的Tab1页中放置一个编辑框组件。

  接着将PageControl组件切换到Tab2页,放置一个文本编辑框组件。

  最后,编译并运行这个程序。

  点击tabControl组件的tab1到tab3标签,可以看出,编辑框出现在组件的每一页中。

  点击PageControl组件的tab1到tab3标签,可以看出,每一页组件都不相同。

posted on 2011-12-19 16:59  del88  阅读(22)  评论(0编辑  收藏  举报