2

これは Delphi XE8 で動作していました

これがプロジェクトの例です https://github.com/dangas56/DelphiDXSeattle-BrokenTabControl

キーボードがデバイスにポップアップ表示され、
画面間をフリックするための複数のタブ コントロールとタブ項目がある場合、VertScrollBox が用意されています。Delphi
DX シアトルでタブが正しく印刷されないことがあります。

これは再現するコードの例です - 上記の 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;

これはホーム画面の例です。2 番目のタブをクリックすると、元の tabControl で TabPosition が none に設定されます (タブを非表示にするため)。
ここに画像の説明を入力

これは 2 番目のタブです。通常
、ボタンをクリックして元のタブに戻ると、下部にさらに多くのタブ項目が表示されます。元のタブのタブ位置を下に設定し、アクティブな項目を最初のタブ項目に設定します。

ここに画像の説明を入力

以下に示すように、画面の下部にあるタブ項目は再印刷されていません。

ここに画像の説明を入力

4

1 に答える 1

0


tabPosition を none から bottom に設定する代わりに、一時的な修正を見つけました。

tbcMain.TabPosition := TTabPosition.Bottom;<br>

これを行うと、再び正常に再印刷されるようです

tbcMain.TabPosition := TTabPosition.Bottom;
tbcMain.TabPosition := TTabPosition.Dots;
tbcMain.TabPosition := TTabPosition.Bottom; 
于 2015-09-30T02:49:55.750 に答える