如何使选项卡不可见,但使该选项卡不可见? -德尔福FireMonkey

时间:2019-05-09 14:25:48

标签: delphi firemonkey

我希望能够通过tabB上的按钮打开tabA。但是除了使用该按钮之外,我不希望用户能够打开tabA。但是,如果设置TabA.Visible := False,则会将标签和标签页设置为不可见。有什么办法解决吗?

我的想法是当我需要显示tabA时需要用空白的白色图像覆盖tabB,而当我需要显示tabB时,只需隐藏所有tabA控件即可。这是解决此问题的最佳方法吗?

1 个答案:

答案 0 :(得分:2)

  

我希望能够通过tabB上的按钮打开tabA。但是除了使用该按钮之外,我不希望用户能够打开tabA。但是,如果设置TabA.Visible:= False,则会将选项卡和选项卡表设置为不可见。有什么办法解决吗?

您可以通过设置属性TabControl1.TabPosition = None隐藏标签(同时保持工作表可见)。 注意!此设置使所有选项卡都不可见

因此,您不需要任何图像或其他任何东西即可覆盖任何一张纸。

然后可以使用以下三种方式之一在代码中移动标签页:

  • 将TabControl1.ActiveTab设置为TTabItem
  • 将TabControl1.TabIndex设置为标签页的索引(索引从零开始)
  • 调用TabControl1。“下一个/上一个”移至以下/上一个标签页

示例代码

// Button on first tabsheet
procedure TForm5.Button1Click(Sender: TObject);
begin
//  TabControl1.ActiveTab := TabItem2; // Immediate transition
//  TabControl1.TabIndex := 1;  // Immediate transition
  TabControl1.Next;  // Animated transition
end;

// Button on second tabsheet
procedure TForm5.Button2Click(Sender: TObject);
begin
//  TabControl1.ActiveTab := TabItem1; // Immediate transition
//  TabControl1.TabIndex := 0;  // Immediate transition
  TabControl1.Previous;  // Animated transition
end;