这在 Delphi XE8 中工作
这是一个示例项目 https://github.com/dangas56/DelphiDXSeattle-BrokenTabControl
我们有一个 VertScrollBox 用于当键盘在设备上弹出
并有多个选项卡控件和选项卡项目在屏幕之间轻弹时
注意到在 Delphi DX Seattle 中有时无法正确打印选项卡
这是要重现的代码示例 - 您可以从上面的 git 链接下载示例
procedure TForm2.tbcMainChange(Sender: TObject);
begin
if tbcMain.ActiveTab = tbtmSettings then
tbcMain.TabPosition := TTabPosition.None
else begin
tbcMain.TabPosition := TTabPosition.Bottom;
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
tbcMain.ActiveTab := tbtmHome;
end;
这是一个主屏幕示例,单击第二个选项卡会将原始 tabControl 上的 TabPosition 设置为 none(以隐藏选项卡)。
这是第二个选项卡 -当我们单击按钮返回原始选项卡时,通常在底部有更多选项卡项,它将原始选项卡的选项卡位置设置为底部并将活动项设置为第一个选项卡项
正如您在下面看到的,它没有重新打印屏幕底部的选项卡项目