ExtJS GridPanel中的垂直滚动条
我正在做一个项目,我在一个页面上有一个网格面板。面板可以显示任意数量的行,并且我设置了autoHeight属性,这会导致GridPanel展开以适应行数。我现在想要一个水平滚动条,因为在某些分辨率下,并非所有列都显示出来(而且我无法减少列数) 如果我设置了自动高度,我没有水平滚动条,如果我没有设置并设置了固定高度,我有一个水平滚动条,但GridPanel显然不适合行数ExtJS GridPanel中的垂直滚动条,extjs,grid,Extjs,Grid,我正在做一个项目,我在一个页面上有一个网格面板。面板可以显示任意数量的行,并且我设置了autoHeight属性,这会导致GridPanel展开以适应行数。我现在想要一个水平滚动条,因为在某些分辨率下,并非所有列都显示出来(而且我无法减少列数) 如果我设置了自动高度,我没有水平滚动条,如果我没有设置并设置了固定高度,我有一个水平滚动条,但GridPanel显然不适合行数 我能做些什么来解决这个问题吗?我似乎找不到能够达到我需要的结果的属性。这似乎是布局设置与对象属性相反的问题 尝试将父容器的布局属
我能做些什么来解决这个问题吗?我似乎找不到能够达到我需要的结果的属性。这似乎是布局设置与对象属性相反的问题
尝试将父容器的布局属性设置为“fit”-您还可以提供代码摘录吗?正如Ergo所说,这更可能是布局问题-GridPanel可能比包含它的面板高,高到不需要滚动条,但显然不完全可见。将GridPanel放入具有适当布局的容器中,即边框布局、配合布局或卡片布局。正确设置布局管理器通常是ExtJS Fu最困难的部分之一。我的想法是在包含网格的panel.panel上设置
autoScroll:true
。您会发现在网格面板周围放置父容器(Ext.panel.panel或任何容器)是成功的。如果在父容器上硬编码高度、宽度和布局(以“适合”),则子项(Ext.grid.Panel)将展开以填充其父容器中的整个可用空间
请参阅ExtJS4Web应用程序开发手册的第80页和第81页
您可以对“Ext.grid.Panel”使用延迟实例化表示法。意味着对子容器(项)xtype属性使用“网格”
Ext.create('Ext.panel.Panel', {
title: 'parent container',
width: 800,
height: 600,
layout: 'fit',
items: {
xtype: 'grid',
title: 'child container',
... define your grid here
},
renderTo: 'grand parent container'
});
添加
viewConfig = {
scroll:false,
style:{overflow: 'auto',overflowX: 'hidden'}
}
有时会导致显示2个滚动条的错误。为了防止这种情况发生,我添加了一个侦听器。然后就可以了
this.on('scrollershow',function(scroller,orientation,eOpts){
if (orientation=='vertical'){
scroller.hide();
}
},this);
就像我说的,我在页面上只有gridpanel,没有布局容器。我对所有这些ExtJS东西都是新手,所以我可能错过了一些东西,我需要在gridpanel周围使用一个容器才能正常工作吗?