2

独自のコンポーネント (または XTemplete) を含む大きなタブを持つ ExtJS 4 でタブパネルを作成したいのですが、実装する方法はありますか? ありがとう

UPDATE : このリンクでカスタム タブの高さを変更できます

ExtJS 4 タブの高さを変更する

4

1 に答える 1

2

チェックアウトしExt.tab.BarExt.tab.Tab. Ext.tab.Panel#tabBarconfig プロパティを使用して、タブ バーの構成をパネルに渡すことができます。

var tabpanel = {
    xtype: 'tabpanel',
    tabBar: {
        defaultType: 'xxx'        
    }
}​

次に、 を使用してカスタム コンポーネント クラスを作成しますalias: 'widget.xxx。デフォルトはカスタム スタイルExt.tab.Tabのサブクラスです。Ext.button.Button

単なるサブクラスではないコンポーネントに置き換えるのExt.tab.Tabは、おそらくかなりの作業です。コンポーネントの動作が正しく、CSS スタイルが適切に見えることを確認する必要があります。

より高速ではあるが柔軟性に欠けるアプローチはExt.tab.Tab、ニーズに合わせてサブクラス化し、その外観を変更することです。

アップデート

残念ながら、ExtJsExt.tab.Panelは、追加/作成される各タブの xtype を明示的に設定します。からExt.tab.Panel

onAdd: function(item, index) {
    var me = this,
        cfg = item.tabConfig || {},
        defaultConfig = {
            xtype: 'tab',                // <= XXX
            card: item,
            disabled: item.disabled,
            closable: item.closable,

tabConfigしかし、ご覧のとおり、タブ パネルの項目にを追加することができます。これは、ここで定義された defaultConfig よりも優先されます。したがって、単純で簡単なアプローチは、タブ パネルのすべての子項目で tabConfig を定義することです。

tabConfig: {
   xtype: 'xxx'
}
于 2012-09-15T05:24:14.837 に答える