0

Extjsウィンドウのbbar(ツールバー)を動的に更新したいのですが、どうすれば機能するのかわかりません。

サンプルコード:

var myWin = Ext.create('Ext.window.Window', {
    modal: true,
    layout: 'fit',
    items: {
    // panel
    },
    bbar: ['->', {
    xtype: 'buttongroup',
    items: [{
        text: 'Cancel',
        handler: function () {
        invoicingWin.destroy();
        }
    }]
    }, {
    xtype: 'buttongroup',
    items: [{
        text: 'Continue',
        handler: function () {

        var test = new Ext.Toolbar({
            dock: 'bottom',
            items: ['->', { html: "Close"}]
        });

        //  !! I want to replace this window bbar to test(toolbar)

        } // btn handler
    }]// items
    }]
}).show();

誰もが知っている、私を助けてください。

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

4

2 に答える 2

2

私はそれが良い解決策ではないと思います。しかし、それは機能します。

var myWin = Ext.create('Ext.window.Window', {
    modal: true,
    layout: 'fit',
    width:400,
    height:400,
    items: {
    // panel
    },
    bbar: ['->', { 
    xtype: 'buttongroup',
    items: [{
        text: 'Cancel',
        handler: function () {
        invoicingWin.destroy();
        }
    }]
    }, {
    xtype: 'buttongroup',
    items: [{
        text: 'Continue',
        handler: function () {

        var test = new Ext.Toolbar({
            dock: 'bottom',
            items: ['->', { html: "Close"}]
        });
        myWin.removeDocked(myWin.down('toolbar'));
        myWin.addDocked(test);
        //  !! I want to replace this window bbar to test(toolbar)

        } // btn handler
    }]// items
    }]
}).show();
于 2012-05-18T04:13:33.287 に答える
0

IMO、ExtJSは、パネルのツールバー(およびパネルの子孫)を置き換えることを期待していません。通常、ツールバーには必要なアイテムのリストがあり、それらを非表示/表示するだけです。

実際には、、、、、を使用しgetDockedItems()getDockedComponent()ニーズを満たすaddDocked()ことができます。insertDocked()removeDocked()

于 2012-05-18T03:59:11.980 に答える