extjs4.0的佈局Layout

佈局Layout

佈局就是指容器組件中子元素的分佈,排列組合方式,Ext的所有容器組件都支持佈局操作,每一個容器都會有一個對象的佈局,佈局負責管理組件中子元素的排列、組合及渲染方式等

舉例說明:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

width:300,

height:200,

layout:'column',

items:[

{

columnWidth:0.5,

title:'面板1'

},

{

columnWidth:0.5,

title:'面板2'

}

]

});

});

以上的代碼我們創建了一個面板,Panel是一個容器的組件,我們使用layout指定該面板使用Culumn的佈局,該面板的子元素是兩個面板,這兩個面板都包含了一個與列布局相關的配置參數columnWidth,他們的值都是0.5,就是說每個面板佔了一半的寬度

第一: border區域佈局類

Ext.onReady(function(){

Ext.create("Ext.container.Viewport",{

layout:'border',

items:[

{

region:'north',

height:50,

title:'頂部面板'

},

{

region:'south',

height:50,

title:'底部面板'

},

{

region:'center',

title:'中間面板'

},

{

region:'west',

width:100,

collapsible:true,//加效果,當點擊左邊面板的那個<<按鈕時,可以縮

title:'左邊面板'

},

{

region:'east',

width:100,

title:'右邊面板'

}

]

});

});


第二 column類的佈局

列布局將整個容器組件看成一列,然後往裏面放入元素的時候,可以通過在子元素中指定使用column width或width來指定子元素所佔的列寬度,columnwidth表示使用的是百分百比的形式指定列寬度,width表示使用絕對像素指定列寬度,在實際應用中,可以混合使用兩種形式

舉例:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

title:'使用columnLayout佈局',

layout:'column',

width:500,

height:100,

items:[

{title:'列1',width:200},

{title:'列2',columnWidth:0.3},

{title:'列3',columnWidth:0.3},

{title:'列4',columnWidth:0.4},

]

});

});

第三fit佈局

常用於嵌套佈局時使之自適應容器大小,即會佈滿整個容器,如果容器內有多個子元素,則只會顯示一個子元素。通常用於菜單、表單等的嵌套佈局

舉例:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

title:'容器組件',

layout:'fit',

width:400,

height:100,

items:[

{title:'子元素1',html:'這是子元素1的內容'},

{title:'子元素2',html:'這是子元素2的內容'},

]

});

});

效果爲:

第四 form佈局

Form佈局是一種專門用於管理表單中字段的不僅,這種佈局主要用於在程序中創建表單字段或表單元素等使用

舉例:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

title:'容器組件',

width:300,

layout:'form',

hideLabels:false,

labelAlign:'right',

height:120,

defaultType:'textfield',

items:[

{filedLabel:'請輸入姓名',name:'name'},

{filedLabel:'請輸入地址',name:'address'},

{filedLabel:'請輸入電話',name:'tel'}

]

});

});


第五 accordion佈局

表示可摺疊的佈局,也就是說是說使用該佈局容器組件中的子元素時可以摺疊的形式

舉例:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

title:'容器組件',

width:500,

height:200,

layout:'accordion',

layoutConfig:

{animate:true},

items:[

{title:'子元素1',html:'這是子元素1的內容'},

{title:'子元素2',html:'這是子元素2的內容'},

{title:'子元素3',html:'這是子元素3的內容'},

]

});

});

第六 table佈局

該佈局負責把容器中的子元素按照類似普通html標籤來進行佈局

舉例:

Ext.onReady(function(){

Ext.create("Ext.panel.Panel",{

renderTo:'pan',

title:'容器組件',

width:500,

height:200,

layout:'table',

layoutConfig:{columns:3},

items:[

{title:'子元素1',html:'這是子元素1的內容',rowspan:2,height:100}, //跟框架差不多,分爲兩列

{title:'子元素2',html:'這是子元素2的內容',colspan:2,}, //另一列爲兩行

{title:'子元素3',html:'這是子元素3的內容'},

{title:'子元素4',html:'這是子元素4的內容'}

]

});

});

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章