Gridpanel自动调整窗口大小调整大小

时间:2010-03-25 07:45:46

标签: extjs

我正在使用array-grid extjs示例尝试将网格面板装入容器窗口。问题在于调整容器窗口的大小,网格面板不会自动适应新的大小。据我了解,它应该如何运作。

以下是示例的链接:http://www.extjs.com/deploy/dev/examples/grid/array-grid.html

我所做的是改变了以下内容..

// Added to gridpanel config
layout: 'fit',
viewConfig: {
    forceFit: true
}

// Window container
var gridWindow = new Ext.Window({
    items: [
        grid
    ]
});

// Instead of grid.render, use gridWindow.show();
gridWindow.show();

result

5 个答案:

答案 0 :(得分:9)

layout: 'fit',

应该进入gridWindow配置!布局管理器会安排面板的子项,但网格 是孩子。

答案 1 :(得分:9)

我正在使用以下解决方法:

Ext.onReady(function () {
    var grid = ... //define your grid here

    Ext.EventManager.onWindowResize(function () {
        grid.setSize(undefined, undefined);
    });
});

Extjs v4.0.7

答案 2 :(得分:1)

我通过将gridpanel包装到Ext.Panel中,并将layout属性设置为“fit”来解决这个问题。 网格面板(viewConfig也包含forceFit:'true'现在会在调整窗口大小时自动调整大小

答案 3 :(得分:0)

我认为你需要使用EventManager类。请在following blog

中阅读

答案 4 :(得分:0)

使用ExtJS 6,这对我有用(不需要Ext.Viewport作为父容器):

var grid = //...

Ext.on('resize', function(w, h){
  grid.updateLayout();
});