树面板上的水平滚动

时间:2012-02-22 04:00:51

标签: extjs extjs4

是否有人知道如何在树状面板上显示水平滚动条......

因为它描述了here,所以错误将在4.1.x版本中修复,...
因为我不满意,我试图谷歌搜索找到热门修复, 我得到this,Edspencer先生建议使用ext 4.0.6 ....
但是,它仍然无法正常工作。 (tested版本4.0.7)

任何人都知道如何修复这个???

1 个答案:

答案 0 :(得分:0)

我有一些解决方法。请参阅下面的代码。

afterrender: function() {
    var view = this.getView();
    var c = view.container;
    var e = view.el;

    var max = 0;
    Ext.each(e.query('.x-grid-cell-inner'), function(el) {
        el = Ext.get(el);
        var size = el.getPadding('lr');
        Ext.each(el.dom.childNodes, function(el2){
            if (el2.nodeType == 3) {
                size += 6 + el.getTextWidth(el2.nodeValue);
            } else {
                size += Ext.get(el2).getWidth();
            }
        });
        max = Math.max(max, size);
    });
    max += c.getPadding('lr');

    if (c.getWidth() < max) {
        c.dom.style.overflowX = 'scroll';
        e.setWidth(max);
        e.down('table').setWidth(max);
    }
}

您只需将此侦听器添加到TreePanel即可。基本上它找到更宽元素的宽度并扩展表的宽度,在容器上切换溢出。

工作样本:http://jsfiddle.net/Uf7yy/2/

相关问题