Extjs how to set 100% height for vbox panel

2019-06-17 10:45发布

enter image description here

Hi~,

I want to set 100% left over height to panel 2. but I don't know how to do..

here is my test code,

{
    title : 'EAST',
    region : 'east',
    layout : 'vbox',
    layoutConfig : {
        align : 'stretch'
    },
    bodyStyle : 'border:1px solid blue',
    width: 300,
    items : [
        new Ext.Panel({
            title : 'Panel 1',
            border : true,
            layout : 'fit',
            height : 250,
            html : 'PANEL 1 AREA'
        }),
        new Ext.Panel({
            title : 'Panel 2',
            border : true,
            bodyStyle : 'border:1px solid red',
            layout : 'fit',
            html : 'PANEL 2 AREA'
        })
    ]
}

I tried, autoHeight : true and height : '100%' to panel 2 but it does not work.

anybody knows, please help me ~

thank you~!

标签: layout Extjs
2条回答
对你真心纯属浪费
2楼-- · 2019-06-17 11:25

try setting flex property in second panel

    new Ext.Panel({
        title     : 'Panel 2',
        border    : true,
        bodyStyle : 'border:1px solid red',
        layout   : 'fit',
        html      : 'PANEL 2 AREA',
        flex      : 1

    })

flex is only used when Component is rendered by a Container which has been configured to use a BoxLayout. Each child Component with a flex property will be flexed either vertically (by a VBoxLayout) or horizontally (by an HBoxLayout) according to the item's relative flex value compared to the sum of all Components with flex value specified.

查看更多
霸刀☆藐视天下
3楼-- · 2019-06-17 11:28

You should use flex property for the second panel.

new Ext.Panel({
    title : 'Panel 2',
    border : true,
    bodyStyle : 'border:1px solid red',
    layout : 'fit',
    html : 'PANEL 2 AREA',
    flex: 1
})
查看更多
登录 后发表回答