3

別の関数から tabPanel 内の項目のタイトル プロパティを更新するにはどうすればよいですか?

mainpanel は私の tabPanel であり、js デバッガーに従ってタイトルを正常に更新しています。Calling doLayout(); ただし、UI でタブを再描画していないようです。

var mainpanel = Ext.getCmp('mainpanel');

   var item = mainpanel.items.items[0];

   item.title = 'Me';
   mainpanel.doLayout();
4

5 に答える 5

1

別の機能からタイトルを更新するために使用できます

Panel.title1Button.setText(finToolbarTitle);

また

ドッキングされたアイテムのツールバーについて言及した場合

Panel.dockedItems.items[1].setTitle(toolbarTitle);
于 2012-02-27T11:25:11.720 に答える
1

これは、タブのタイトルを設定するために私が書いたオーバーライド関数です。それを使用するファイルの前に、これを js に含めます。TabPanel.setTabTitle( tabNo, newTitle )メソッドを追加します。

タブ内のコールバックでの使用例:

this.ownerCt.setTabTitle( 0, 'My Title');

オーバーライド コード:

/**
 * Overrides the Ext.TabPanel to add .setTabTitle() function
 */
Ext.override(Ext.TabPanel, {
    /**
     * Set the title of a specific tab
     */
    setTabTitle: function( tabNo, newTitle ) {
        // make sure we have a number and tab exists
        if( tabNo>=0 && !Ext.isEmpty( this.getTabEl(tabNo))) {
            var tabEl = this.getTabEl(tabNo); // walk down dom, update title span
            Ext.getDom(tabEl).down('.x-tab-strip-text').innerHTML = newTitle;
        }
     }
 });
于 2011-04-30T22:57:14.680 に答える
1

extjs 4.0、4.1、または 4.1.1 では、タブ要素変数がある場合、タイトルを変更できます。

//var tabEl = this.getActiveTab();
Ext.getDom(tabEl).tab.btnEl.dom.innerText = 'My New Title';

次のように、タブ パネルで新しいメソッドを定義することもできます。

setTabTitle: function(tabEl, title) {
    Ext.getDom(tabEl).tab.btnEl.dom.innerText = title;    
}
于 2012-09-14T05:27:33.860 に答える
1

方法はありませんsetTitle()か?

于 2010-10-17T19:19:34.540 に答える