layout:'hbox'
和layout:'column'
之间有什么区别?它只是语法吗?
示例'列':
layout:'column',
items: [{
title: 'Width = 25%',
columnWidth: .25,
html: 'Content'
},{
title: 'Width = 75%',
columnWidth: .75,
html: 'Content'
},{
title: 'Width = 250px',
width: 250,
html: 'Content'
}]
示例' hbox ':
layout: {
type: 'hbox',
pack: 'start',
align: 'stretch'
},
items: [
{html:'panel 1', flex:1},
{html:'panel 2', width:150},
{html:'panel 3', flex:2}
]
答案 0 :(得分:5)
column
有几个明显的优点尚未涵盖。它比hbox
轻得多。 Column
只是让浏览器使用浮点布局其内容而不是设置left
它的标记比hbox
更少。在大多数情况下,它还可以更好地处理溢出。
例如,在列布局中对比窗口上的hbox
var win = Ext.create('Ext.Window', {
width: 700,
height: 400,
title: "Column",
defaults: {
height: 50,
width: 300
},
layout: {
type: 'column'
},
items: [{
xtype: 'panel',
title: 'Inner Panel One'
},{
xtype: 'panel',
title: 'Inner Panel Two'
},{
xtype: 'panel',
title: 'Inner Panel Three'
}]
});
win.show()
var win2 = Ext.create('Ext.Window', {
width: 700,
height: 400,
title: "Hbox",
defaults: {
height: 50,
width: 300
},
layout: {
type: 'hbox'
},
items: [{
xtype: 'panel',
title: 'Inner Panel One'
},{
xtype: 'panel',
title: 'Inner Panel Two'
},{
xtype: 'panel',
title: 'Inner Panel Three'
}]
});
win2.show()
总结一下,将column
视为auto
布局,将事物向左移动,将hbox
视为box
布局,添加{{1}等功能}和stretch
。他们都有自己的屈曲版本。
答案 1 :(得分:3)
Column
存在于VBox
和HBox
之前的早期版本的框架中。它主要是出于兼容性原因而保留的。 HBox
提供了更多功能(pack
和align
)等。
答案 2 :(得分:2)
色谱柱 没有自动高度和HBox,所有区域都已满。
看看这些例子:
http://dev.sencha.com/deploy/ext-4.0.0/examples/layout-browser/layout-browser.html