2012-03-12 11 views
0

グリッドパネルのtbarExt.tab.Barを使用しています。ExtJS 4:幅の自動計算を防止する

私のコードは次のとおりです。結果として

... 
tbar: [ 
    ... 
    "->", 
    this._getTabbar() 
] 
// where this._getTabbar() is: 
GridPanel.prototype._getTabbar = function() { 
    return Ext.tab.Bar({ 
     width: 850, 
     items: [ 
      {text: "Grid's Tab #1", closable: false}, 
      {text: "Grid's Tab #2", closable: false}, 
      {text: "Grid's Tab #3", closable: false}, 
      ... 
      {text: "Grid's Tab #N", closable: false} 
     ] 
    }); 
} 

、私は正しいトップのツールバーを得るが、タブバーのボタンが短すぎると、私はそのラベルを見ることはできません。

{text: "Grid's Tab #N", ..., width: 150} 

、何も、ExtJSの:それは

は私が手動でタブの設定にwidthパラメータを追加しようとしました...タブボタングリッドのタブ#1グリッドのTのように表示されていることを意味しautomaticalyは各ボタンの同じ幅を計算します。私はflex: falseともう一度何も設定しようとしなかった。

フレックスのような幅の計算を防ぐために何をすべきですか? 「長い長いロング・ロング・ラベルのボタン」を使用して100500個のボタンを作成すると、タブバーのすべてのボタンに全文が表示されます。

ありがとうございました。

答えて

0

少し混乱しています。グリッドパネルのtbar configはツールバーを対象としています。 tbarの設定は、通常次のとおりです。

tbar: [ 
    { xtype: 'button', text: 'Button 1' } 
] 

ツールバーはボタンに限定されません。ここでは、すべての種類のフィールドを持つ非常に忙しいツールバーの例を示します。http://jsfiddle.net/dbrin/PhAbR/embedded/result/

タブバーは、タブパネル用です。

は「TabBarには、タブパネルによって内部的に使用され、通常は手動で作成する を必要はありません」あなたがそう:)ことができなかったことを

ではなく、あなたは、次のとおりです。ここでのドキュメントの言うことですタブでカスタムコンポーネントを作成しようとしていますか?もしそうなら、通常のタブパネルを使わないのはなぜですか?

+0

ここで説明します。ボタンセット(ツールバーのデフォルト)の代わりにタブバーを使用するのは、タブとタブバーのネイティブスクロールです。私の仕事は、いくつかのプロパティ(タブ)で区切られたグリッドの作成です。したがって、ユーザーがアクティブなタブを変更すると、データストアに関連するデータが再ロードされます。 'Ext.container.ButtonGroup'に水平スクロール(タブバーのように)を追加する方法を知っていれば、私は非常に感謝します。どうも。 –

+0

自動スクロールでボタンセットをコンテナにラップしようとしましたか?私はhboxがあなたが必要とするレイアウトだと思う。 – dbrin

+0

試してみてください...何もありません。 'Ext.tab.Bar'はHBOXレイアウトを持っており、HBOXレイアウトのドキュメントでは、このレイアウトではlayout.flex'プロパティを' 0'または 'undefined'に設定しないように、親コンテナの幅に応じてchildrendの幅が自動的に計算されます。 。そしてこれもうまくいきません))私は現在の問題を 'Ext.tab.Bar.minTabWidth'値で一時的に修正しましたが、まだ解決策を探していました。 –

関連する問題