ExtJS面板布局:如何正确布局面板

时间:2013-04-14 11:26:04

标签: javascript extjs extjs4 extjs4.1

我正在尝试渲染一个占据整个水平空间的Panel A.然后我试图在面板A下面渲染两个面板B和C,两个面板都占据了50%的水平空间。

因此,我想实现的是这种结构:

-------------
|     A     |
-------------
|  B  |  C  |
-------------

但如此fiddle所示,我正在实现以下面板渲染:

-------------
|     A     |
-------------
|     B     |
-------------
|     C     |
-------------

请随意分叉fiddle以实现我需要的对齐,如上所述。

1 个答案:

答案 0 :(得分:3)

如果有这样的观点怎么样:

Ext.define('MyApp.view.MyContainer', {
    extend: 'Ext.container.Container',
    padding: 10,
    layout: {
        align: 'stretch',
        pack: 'center',
        type: 'vbox'
    },

    initComponent: function() {
        var me = this;

        Ext.applyIf(me, {
            items: [
                {
                    xtype: 'panel',
                    flex: 1,
                    height: 150,
                    title: 'A'
                },
                {
                    xtype: 'container',
                    flex: 1,
                    height: 150,
                    layout: {
                        padding: '10 0 10 0',
                        align: 'stretch',
                        type: 'hbox'
                    },
                    items: [
                        {
                            xtype: 'panel',
                            flex: 1,
                            width: 150,
                            title: 'B'
                        },
                        {
                            xtype: 'panel',
                            flex: 1,
                            width: 150,
                            title: 'C'
                        }
                    ]
                }
            ]
        });
        me.callParent(arguments);
    }
});