强制 ExtJS 4.2.1 网格自动调整其高度的属性或方法

Posted

技术标签:

【中文标题】强制 ExtJS 4.2.1 网格自动调整其高度的属性或方法【英文标题】:Property or method to force ExtJS 4.2.1 grid to adjust its height automatically 【发布时间】:2013-07-26 08:03:11 【问题描述】:

我有一个使用 ExtJs 4.2.1 框架开发的简单网格。网格有一个底栏 (bbar)。 问题:由于底部栏(隐藏在底部栏后面),水平滚动条不可见。如果我使用 grid.setHeight() 设置网格的高度,我可以看到水平滚动条。有没有办法告诉网格根据滚动条的可见性调整其高度?

之前我使用以下代码根据滚动条的可见性调整高度。但是这个选项在 ExtJs 4.2.1 中不起作用。

 if (grid.view.getWidth() < parseFloat(grid.view.getEl().dom.children[0].style.width)) 
        alert('horizontal scroll is present');
  if (grid.view.getHeight() < parseFloat(grid.view.getEl().dom.children[0].scrollHeight)) 
            alert('vertical scroll is present');
    

请提供您的建议。

谢谢

【问题讨论】:

【参考方案1】:

您可以尝试 autoHeight = true 或 试试下面的方法

布局:'适合', 对齐:“拉伸”, 项目:[ xtype: 'yourgrid']

即,网格的容器布局使用 fit 和 align 拉伸

【讨论】:

【参考方案2】:

使用 autoHeight:true,在网格中配置

【讨论】:

-1, autoHeight 并且是不推荐使用的配置。只需省略计算/固定大小就足够了。

以上是关于强制 ExtJS 4.2.1 网格自动调整其高度的属性或方法的主要内容,如果未能解决你的问题,请参考以下文章

Ext.tip (Extjs 3.4) 中的强制高度和滚动条

Ext JS 网格面板高度属性

ExtJs 4 - 调整窗口大小时未保持 TextField 高度

在 ExtJs 4 网格中强制执行唯一键值

具有布局适合和网格的 Extjs 3.3.1 FieldSet 在窗口调整大小时不会调整网格大小

使行扩展元素,即 extjs 网格和图表在窗口调整大小时调整大小