I need to put 3 elements under each other in the center of page. It is not a problem with HBOX. But my elements have different width: two elements with 350 width and one element with 1000 width. here is the sample:
Ext.create('Ext.Viewport', {
layout: {
type: "hbox",
pack: "center",
align: "middle"
},
items: {
xtype: 'container',
items:[{
xtype: 'image',
height: 350,
width: 350,
src: '/images/logo.jpg'
},{
xtype: 'image',
height: 350,
width: 350,
src: '/images/logo2.jpg'
},{
xtype: 'panel',
width: 1000,
margin: '0px 0px 0px -325px',
frame: true,
autoscroll: true,
title: 'panel title',
html: 'some panel with some rows with<br /> some text'
}]
},
renderTo: Ext.getBody()
});
The main problem is horisontal alignment of elements. The second problem is: no scrollbar if the resolution of the screen is small and I have big text in panel.
Ok, another example:
Ext.create('Ext.Viewport', {
layout: {
type: "hbox",
pack: "center",
align: "middle"
},
items: {
xtype: 'container',
items:[{
xtype: 'form',
width: 350,
title: 'Form Panel',
items: [{
xtype: 'textfield',
fieldLabel: 'Name'
}]
},{
xtype: 'panel',
width: 1000,
frame: true,
autoscroll: true,
title: 'panel title',
html: 'some panel with some rows with<br /> some text'
}]
},
renderTo: Ext.getBody()
});
This panel will be exactly in the middle of screen, but the form will not. P.S. I've tried to move layout to the container - it doesn't work
I think that maybe you should define a
minHeight
to the container, and include the layout'fit'
to the container in order to get the autoscroll panel.And include the
vbox
layout to the contianer' items.