标準面闆:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'面闆頭部(header)',
- tbar : ['頂端工具欄(top toolbars)'],
- bbar : ['底端工具欄(bottom toolbars)'],
- height:200,
- collapsible : true,
- collapseDirection : 'left',
- width:300,
- frame:true,
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- bodyStyle:'background-color:#FFFFFF',
- html:'面闆體(body)',
- tools : [
- {id:'toggle'},
- {id:'close'},
- {id:'maximize'}
- ],
- buttons:[{
- text:'面闆底部(footer)'
- }]
- });
面闆加載遠端頁面:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'面闆加載遠端頁面',
- height:150,//設定面闆的高度
- width:250,//設定面闆的寬度
- frame:true,//渲染面闆
- autoScroll : true,//自動顯示滾動條
- collapsible : true,//允許展開和收縮
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- autoLoad :'page1.html',//自動加載面闆體的預設連接配接
- bodyStyle:'background-color:#FFFFFF'//設定面闆體的背景色
- });
面闆加載本地資源:
Html代碼

- <HTML>
- <HEAD>
- <TITLE>面闆加載本地資源</TITLE>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link rel="stylesheet" type="text/css" href="../../ext-4.0/resources/css/ext-all.css" />
- <script type="text/javascript" src="../../ext-4.0/bootstrap.js"></script>
- <script type="text/javascript" src="../../ext-4.0/locale/ext-lang-zh_CN.js"></script>
- <script type="text/javascript">
- Ext.onReady(function(){
- Ext.create('Ext.panel.Panel',{
- title:'面闆加載本地資源',
- height:150,//設定面闆的高度
- width:250,//設定面闆的寬度
- frame:true,//渲染面闆
- collapsible : true,//允許展開和收縮
- autoScroll : true,//自動顯示滾動條
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- contentEl :'localElement',//加載本地資源
- bodyStyle:'background-color:#FFFFFF'//設定面闆體的背景色
- });
- });
- </script>
- </HEAD>
- <BODY STYLE="margin: 10px">
- <table border=1 id='localElement'>
- <tr><th colspan=2>本地資源---員工清單</th></tr>
- <tr>
- <th width = 60>序号</th><th width = 80>姓名</th>
- <tr>
- <tr><td>1</td><td>張三</td></tr>
- <tr><td>2</td><td>李四</td></tr>
- <tr><td>3</td><td>王五</td></tr>
- <tr><td>4</td><td>趙六</td></tr>
- <tr><td>5</td><td>陳七</td></tr>
- <tr><td>6</td><td>楊八</td></tr>
- <tr><td>7</td><td>劉九</td></tr>
- </table>
- </BODY>
- </HTML>
使用html配置項自定義面闆内容:
Javascript代碼

- var htmlArray = [
- '<table ,
- '<tr><td colspan=2>員工清單</td></tr>',
- '<tr><th width = 60>序号</th><th width = 80>姓名</th><tr>',
- '<tr><td>1</td><td>張三</td></tr>',
- '<tr><td>2</td><td>李四</td></tr>',
- '<tr><td>3</td><td>王五</td></tr>',
- '<tr><td>4</td><td>趙六</td></tr>',
- '<tr><td>5</td><td>陳七</td></tr>',
- '<tr><td>6</td><td>楊八</td></tr>',
- '<tr><td>7</td><td>劉九</td></tr>',
- '</table>'
- ];
- Ext.create('Ext.panel.Panel',{
- title:'使用html配置項自定義面闆内容',
- height:150,//設定面闆的高度
- width:250,//設定面闆的寬度
- frame:true,//渲染面闆
- collapsible : true,//允許展開和收縮
- autoScroll : true,//自動顯示滾動條
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- html:htmlArray.join(''),
- bodyStyle:'background-color:#FFFFFF'//設定面闆體的背景色
- });
使用items配置項添加單一元件示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'月曆',
- frame:true,//渲染面闆
- collapsible : true,//允許展開和收縮
- renderTo: Ext.getBody(),
- width : 200,
- bodyPadding: 5,
- items: [{//向面闆中添加一個日期元件
- xtype: 'datepicker',
- minDate: new Date()
- }]
- });
使用items配置項添加多個元件示例:
Html代碼

- <HTML>
- <HEAD>
- <TITLE>使用items配置項添加多個元件示例</TITLE>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link rel="stylesheet" type="text/css" href="../../ext-4.0/resources/css/ext-all.css" />
- <script type="text/javascript" src="../../ext-4.0/bootstrap.js"></script>
- <script type="text/javascript" src="../../ext-4.0/locale/ext-lang-zh_CN.js"></script>
- <script type="text/javascript">
- Ext.onReady(function(){
- Ext.create('Ext.panel.Panel',{
- title:'使用items進行面闆嵌套',
- frame:true,//渲染面闆
- collapsible : true,//允許展開和收縮
- height : 200,
- width : 250,
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- layout : 'vbox',
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF',//設定面闆體的背景色
- collapsible : true,//允許展開和收縮
- width : 230,
- autoScroll : true//自動顯示滾動條
- },
- items: [{
- title : '嵌套面闆一',
- height : 80,//子面闆高度為80
- contentEl : 'localElement'//加載本地資源
- },{
- title : '嵌套面闆二',
- autoLoad : 'page1.html'//加載遠端頁面
- }]
- });
- });
- </script>
- </HEAD>
- <BODY STYLE="margin: 10px">
- <table border=1 id='localElement'>
- <tr><th colspan=2>本地資源---員工清單</th></tr>
- <tr>
- <th width = 60>序号</th><th width = 80>姓名</th>
- <tr>
- <tr><td>1</td><td>張三</td></tr>
- <tr><td>2</td><td>李四</td></tr>
- <tr><td>3</td><td>王五</td></tr>
- </table>
- </BODY>
- </HTML>
Ext.layout.container.Auto布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'Ext.layout.container.Auto布局示例',
- frame:true,//渲染面闆
- width : 250,
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- layout : 'auto',//自動布局
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF'//設定面闆體的背景色
- },
- //面闆items配置項預設的xtype類型為panel,
- //該預設值可以通過defaultType配置項進行更改
- items: [{
- title : '嵌套面闆一',
- html : '面闆一'
- },{
- title : '嵌套面闆二',
- html : '面闆二'
- }]
- });
Ext.layout.container.Fit布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout : 'fit',
- title:'Ext.layout.container.Fit布局示例',
- frame:true,//渲染面闆
- height : 150,
- width : 250,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF'//設定面闆體的背景色
- },
- //面闆items配置項預設的xtype類型為panel,
- //該預設值可以通過defaultType配置項進行更改
- items: [{
- title : '嵌套面闆一',
- html : '面闆一'
- },{
- title : '嵌套面闆二',
- html : '面闆二'
- }]
- })
Ext.layout.container.Accordion布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout:'accordion',
- title:'Ext.layout.container.Accordion布局示例',
- frame:true,//渲染面闆
- height : 150,
- width : 250,
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- title : '嵌套面闆一',
- html : '說明一'
- },{
- title : '嵌套面闆二',
- html : '說明二'
- },{
- title : '嵌套面闆三',
- html : '說明三'
- }]
- });
Ext.layout.CardLayout布局示例:
Javascript代碼

- var panel = Ext.create('Ext.panel.Panel',{
- layout : 'card',
- activeItem : 0,//設定預設顯示第一個子面闆
- title:'Ext.layout.container.Card布局示例',
- frame:true,//渲染面闆
- height : 150,
- width : 250,
- renderTo: Ext.getBody(),
- bodyPadding: 5,
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- title : '嵌套面闆一',
- html : '說明一',
- id : 'p1'
- },{
- title : '嵌套面闆二',
- html : '說明二',
- id : 'p2'
- },{
- title : '嵌套面闆三',
- html : '說明三',
- id : 'p3'
- }],
- buttons:[{
- text : '上一頁',
- handler : changePage
- },{
- text : '下一頁',
- handler : changePage
- }]
- });
- //切換子面闆
- function changePage(btn){
- var index = Number(panel.layout.activeItem.id.substring(1));
- if(btn.text == '上一頁'){
- index -= 1;
- if(index < 1){
- index = 1;
- }
- }else{
- index += 1;
- if(index > 3){
- index = 3;
- }
- }
- panel.layout.setActiveItem('p'+index);
- }
百分比(Percentage)定位示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout : 'anchor',
- title:'Ext.layout.container.Anchor布局示例',
- frame:false,//渲染面闆
- height : 150,
- width : 300,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- anchor : '50% 50%',//設定子面闆的寬高為父面闆的50%
- title : '子面闆'
- }]
- });
偏移值(Offsets)定位:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout : 'anchor',
- title:'Ext.layout.container.Anchor布局示例',
- frame:false,//渲染面闆
- height : 150,
- width : 300,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- anchor : '-10 -10',//設定子面闆的寬高偏移父面闆10像素
- title : '子面闆'
- }]
- });
參考邊(Sides)定位:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout : 'anchor',
- title:'Ext.layout.container.Anchor布局示例',
- autoScroll : true,//自動顯示滾動條
- frame:false,//渲染面闆
- height : 150,
- width : 300,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- anchor : 'r b',//相對于父容器的右邊和底邊的內插補點進行定位
- width : 200,
- height : 100,
- title : '子面闆'
- }]
- });
Ext.layout.container.Absolute布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- layout : 'absolute',
- title:'Ext.layout.container.Absolute布局示例',
- frame:false,//渲染面闆
- height : 150,
- width : 300,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- frame : true,
- height : 70,
- width : 100,
- bodyStyle:'background-color:#FFFFFF;padding:15px'//設定面闆體的背景色
- },
- items: [{
- x : 10,//橫坐标為距父容器左邊緣90像素的位置
- y : 10,//縱坐标為距父容器上邊緣10像素的位置
- html : '子面闆一',
- title : '子面闆一'
- },{
- x : 130,//橫坐标為距父容器左邊緣130像素的位置
- y : 40,//縱坐标為距父容器上邊緣40像素的位置
- html : '子面闆二',
- title : '子面闆二'
- }]
- });
指定固定列寬示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'Ext.layout.container.Column布局示例',
- layout : 'column',
- frame:true,//渲染面闆
- height : 150,
- width : 250,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;',//設定面闆體的背景色
- height : 100,
- frame : true
- },
- items: [{
- title:'子面闆一',
- width:100//指定列寬為100像素
- },{
- title:'子面闆二',
- width:100//指定列寬為100像素
- }]
- });
使用百分比指定列寬:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'Ext.layout.container.Column布局示例',
- layout : 'column',
- frame:true,//渲染面闆
- height : 150,
- width : 250,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;',//設定面闆體的背景色
- height : 100,
- frame : true
- },
- items: [{
- title:'子面闆一',
- columnWidth:.3//指定列寬為容器寬度的30%
- },{
- title:'子面闆二',
- columnWidth:.7//指定列寬為容器寬度的70%
- }]
- });
固定值與百分比結合使用:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'Ext.layout.container.Column布局示例',
- layout : 'column',
- frame:true,//渲染面闆
- height : 150,
- width : 350,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;',//設定面闆體的背景色
- height : 100,
- frame : true
- },
- items: [{
- title:'子面闆一',
- width : 100//指定列寬為100像素
- },{
- title:'子面闆二',
- columnWidth:.3//指定列寬為容器剩餘寬度的30%
- },{
- title:'子面闆三',
- columnWidth:.7//指定列寬為容器剩餘寬度的70%
- }]
- });
Ext.layout.container.Table布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title:'Ext.layout.container.Table布局示例',
- layout : {
- type : 'table',//表格布局
- columns : 4 //設定表格布局預設列數為4列
- },
- frame:true,//渲染面闆
- height : 150,
- width : 210,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- bodyStyle:'background-color:#FFFFFF;',//設定面闆體的背景色
- frame : true,
- width : 50,
- height : 50
- },
- items: [{
- title:'子面闆一',
- width : 150,
- colspan : 3//設定跨列
- },{
- title:'子面闆二',
- rowspan : 2,//設定跨行
- height : 100
- },
- {title:'子面闆三'},
- {title:'子面闆四'},
- {title:'子面闆五'}]
- });
Ext.layout.container.Border布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title : 'Ext.layout.container.Border布局示例',
- layout:'border',//邊框布局
- height : 250,
- width : 400,
- frame : true,
- renderTo: Ext.getBody(),
- defaults : {//設定預設屬性
- collapsible : true
- },
- items: [{
- title: 'north Panel',
- html : '上邊',
- region: 'north',//指定子面闆所在區域為north
- height: 50
- },{
- title: 'South Panel',
- html : '下邊',
- region: 'south',//指定子面闆所在區域為south
- height: 50
- },{
- title: 'West Panel',
- html : '左邊',
- region:'west',//指定子面闆所在區域為west
- width: 100
- },{
- title: 'east Panel',
- frameHeader : true,
- frame : false,
- html : '右邊',
- region:'east',//指定子面闆所在區域為east
- width: 100
- },{
- title: 'Main Content',
- html : '中間',
- region:'center'//指定子面闆所在區域為center
- }]
- });
Ext.layout.container.HBox布局示例:
Javascript代碼

- Ext.create('Ext.panel.Panel',{
- title : 'Ext.layout.container.HBox布局示例',
- layout:{
- type : 'hbox',//水準盒布局
- align : 'stretch'//子面闆高度充滿父容器
- },
- height : 150,
- width : 300,
- frame : true,
- renderTo: Ext.getBody(),
- items: [{
- title: '子面闆一',
- flex : 1,
- html : '1/4寬(flex=1)'
- },{
- title: '子面闆二',
- flex : 1,
- html : '1/4寬(flex=1)'
- },{
- title: '子面闆三',
- flex : 2,
- html : '1/2寬(flex=2)'
- }]
- });
Ext.container.Viewport示例:
Javascript代碼

- Ext.create('Ext.container.Viewport',{
- layout:'border',//表格布局
- items: [{
- title: 'north Panel',
- html : '上邊',
- region: 'north',//指定子面闆所在區域為north
- height: 100
- },{
- title: 'West Panel',
- html : '左邊',
- region:'west',//指定子面闆所在區域為west
- width: 150
- },{
- title: 'Main Content',
- html : '中間',
- region:'center'//指定子面闆所在區域為center
- }]
- });
Ext.tab.Panel示例:
Javascript代碼

- Ext.create('Ext.tab.Panel',{
- title : 'Ext.tab.Panel示例',
- frame : true,
- height : 150,
- width : 300,
- activeTab : 1,//預設激活第一個tab頁
- renderTo: Ext.getBody(),
- items: [
- {title: 'tab标簽頁1',html : 'tab标簽頁1内容'},
- {title: 'tab标簽頁2',html : 'tab标簽頁2内容'},
- {title: 'tab标簽頁3',html : 'tab标簽頁3内容'},
- {title: 'tab标簽頁4',html : 'tab标簽頁4内容'},
- {title: 'tab标簽頁5',html : 'tab标簽頁5内容'}
- ]
- });
Ext.tab.Panel示例(動态添加tab頁):
Javascript代碼

- var tabPanel = Ext.create('Ext.tab.Panel',{
- title : 'Ext.tab.Panel示例(動态添加tab頁)示例',
- frame : true,
- height : 150,
- width : 300,
- activeTab : 0,//預設激活第一個tab頁
- renderTo: Ext.getBody(),
- items : [{
- title: 'tab标簽頁1',
- html : 'tab标簽頁1内容'
- }],
- buttons : [{
- text : '添加标簽頁',
- handler : addTabPage
- }]
- });
- function addTabPage(){
- var index = tabPanel.items.length + 1;
- var tabPage = tabPanel.add({//動态添加tab頁
- title: 'tab标簽頁'+index,
- html : 'tab标簽頁'+index+'内容',
- closable : true//允許關閉
- })
- tabPanel.setActiveTab(tabPage);//設定目前tab頁
- }