5

PLは、タブパネルにタブが1つしかない場合、タブパネルのヘッ​​ダー「...」を非表示にする方法を教えてくれますか?

サーバー上で extjs コードを生成するためにかなり洗練された方法を使用しているため、Ext.Panel を使用できません。この場合、通常の Ext.Panel を生成できない設計エラーが多数あります。

ここに画像の説明を入力

tnx all、解決策:CSSルールに追加します

.strip-hidden .x-tab-strip-wrap 
{
    display: none;
} 

.strip-show .x-tab-strip-wrap 
{
     display: block;
}

サーバー側 (delphi、ExtPascal など)

if (frmContainer.Tab.Items.Count = 1) then
     frmContainer.Tab.Cls := 'strip-hidden'
   else
     frmContainer.Tab.Cls := 'strip-show';

だから、それは私にとってはうまくいきます(クロム、ファイアフォックス)。

ウィンドウにウィンドウがあるため、2つのルールを追加します。したがって、子ウィンドウに多くのタブがある場合、親ウィンドウのcssルールによって非表示になります。だから私には2つのルールがあり、それは機能します。

4

4 に答える 4

6

バージョン 4.1 では、タブ コントロールを含むパネル/ウィンドウの BeforeShow イベントで次のことができます。

Ext.getCmp('tbMyTabPanel').getTabBar().setVisible(false);
于 2012-07-27T14:16:18.513 に答える
2

ヘッダーを非表示にする唯一の方法は、CSS を操作することです。デフォルトでは、x-tab-panel-header がパネルのヘッ​​ダー部分に適用されます。次のCSS

.hideHeader {

    display:none;
}

div に追加すると、ヘッダーが非表示になります。CSS を適用するには、プロパティを利用する必要がありheaderCfgます。パネルのデフォルト CSS の操作の詳細と例については、bodyCfgのドキュメントを参照してください。

于 2011-04-21T12:55:29.680 に答える
1

ネイティブではできません。

この場合のコンテナ要素は、すでにタブなどのためのスペースを残しています。可能な唯一のことは、カスタム CSS クラスを追加し、その方法でタブを完全に非表示にすることです。

于 2011-04-21T12:38:04.863 に答える
0

次のようにして、ExtJS 3.x でタブとそのヘッダーを非表示にすることができます。

oTab.hide();
oTab.tabEl.hidden = true;

oTabあなたのタブコンポーネントはどこから取得していますかoTab = oTabPanel.getComponent(x);

于 2014-08-01T00:59:51.900 に答える