Ext.tree.Panel自动高度在ExtJS 4中

时间:2011-12-02 20:10:13

标签: extjs treepanel

如何创建Ext.tree.Panel,在展开/折叠节点时自动调整大小以适应其内容?

1 个答案:

答案 0 :(得分:4)

这是一个肮脏的解决方法,但作为一个快速的解决方案对我来说很好。

var tree = Ext.create('Ext.tree.Panel', {
    //...    
    //configuration goes here
    //...
    animate: false,
    //...
    listeners:{
        load: function(){
            resetHeight(this);
        },
        itemexpand: function(){
            resetHeight(this);
        },
        itemcollapse: function(){
            resetHeight(this);
        }
    }
}

function resetHeight(cmp){
    setTimeout(function(){
        var innerElement = cmp.getEl().down('table.x-grid-table');
        if(innerElement){
            var height = innerElement.getHeight();
            cmp.setHeight(height);
        }
    }, 200);
}