Delphi合并标签

时间:2012-07-13 08:47:55

标签: delphi tabs

我正在使用XE2,我正在尝试将标签合并到我的Form GUI应用程序中,并且不知道我会因为这么简单的事情而烦恼。

反正...

我有一个名为TTabSet1的TTabSet ..

当我尝试将列表视图添加到第一个选项卡时,它只显示在所有选项卡上。 例如:

TAB1:

enter image description here

TAB2:

enter image description here

在IDE中:

enter image description here

我应该使用其他组件而不是TTabSet吗? 此外,当使用TTabSet时,在IDE内部我无法更改选项卡以便将组件添加到其他选项卡...

我很抱歉,如果你们有更好的事情要做,除了回答我的n00b问题大声笑,但任何帮助都非常感激。

谢谢你们。

2 个答案:

答案 0 :(得分:3)

TTabControl的使用通常涉及编写OnChange事件处理程序以动态隐藏/显示(或销毁/创建)子控件。为了让您的生活更轻松,您可以为每个标签创建一个单独的框架,只需在用户单击选项卡时创建并显示相关框架,然后释放前一个标签。

TPageControl可能更容易使用,因为您可以在设计时简单地创建和填充所有选项卡(右键单击页面控件并选择“新页面”以创建新的选项卡)。在运行时,它们都是在创建表单时创建的。页面控件自动管理隐藏和显示。缺点可能是在父母的整个生命周期中,内存被用于所有元素,包括隐藏元素。

答案 1 :(得分:1)

  

当我尝试将列表视图添加到第一个选项卡时,它只显示在所有选项卡上。

在这种情况下,它听起来像你需要的组件是TPageControl。页面控件的每个页面都有不同的内容。

要向TPageControl添加新页面,请右键点击TPageControl对象,然后选择新页面


TTabSet州的documentation

  

选项卡集控件通常用于在对话框中显示选项卡式页面。提供TTabSet是为了向后兼容。在32位Windows应用程序中使用TTabControl组件。

因此,即使TTabSet是适合您的控件类型,您也应该使用TTabControlTTabControlTPageControl之间的选择解决方法如下:

  1. 您是否希望每个页面显示相同的控件,尽管这些控件中可能包含不同的数据?如果是,请使用TTabControl
  2. 您希望每个页面显示不同的控件吗?如果是,请使用TPageControl