Panel 页面布局篇

布局篇 
 1.panel accordion 布局
  var panel = new Ext.Panel({  
            layout : 'accordion',  
            layoutConfig : {  
                activeOnTop : true,//设置打开的子面板置顶  
                fill : true,//子面板充满父面板的剩余空间  
                hideCollapseTool: false,//显示“展开收缩”按钮  
                titleCollapse : true,//允许通过点击子面板的标题来展开或收缩面板  
                animate:true//使用动画效果  
            },  
            title:'Ext.layout.Accordion布局示例',  
            frame:true,//渲染面板  
            height : 150,  
            width : 250,  
            applyTo :'panel',  
            defaults : {//设置默认属性  
                bodyStyle:'background-color:#FFFFFF;padding:15px'//设置面板体的背景色  
            },  
            items: [  
                {  
                    title : '嵌套面板一',  
                    html : '说明一' 
                },  
                {  
                    title : '嵌套面板二',  
                    html : '说明二' 
                }  
                ,  
                {  
                    title : '嵌套面板三',  
                    html : '说明三' 
                }  
            ]  
        })  

 2.panel cardLayOut 布局
   var panel = new Ext.Panel({  
            layout : 'card',  
            activeItem : 0,//设置默认显示第一个子面板  
            title:'Ext.layout.CardLayout布局示例',  
            frame:true,//渲染面板  
            height : 150,  
            width : 250,  
            applyTo :'panel',  
            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);  
        }  

 3.layout.AnchorLayout布局panel  

        var panel = new Ext.Panel({  
            layout : 'anchor',  
            title:'Ext.layout.AnchorLayout布局示例',  
            frame:false,//渲染面板  
            height : 150,  
            width : 300,  
            applyTo :'panel',  
            defaults : {//设置默认属性  
                bodyStyle:'background-color:#FFFFFF;padding:15px'//设置面板体的背景色  
            },  
            items: [  
                {  
                    anchor : '50% 50%',//设置子面板的宽高为父面板的50%  
                    title : '子面板' 
                }  
            ]  
        })  
       或者:  
                        items: [  
                {  
                    anchor : '-10 -10',//设置子面板的宽高偏移父面板10像素  
                    title : '子面板' 
                }  
            ]  
 
      或者:  
            items: [  
                {  
                    anchor : 'r b',//相对于父容器的右边和底边的差值进行定位  
                    width : 200,  
                    height : 100,  
                    title : '子面板' 
                }  
            ]  
 
    或者:  
            items: [  
                {  
                    x : '10%',//横坐标为距父容器宽度10%的位置  
                    y : 10,//纵坐标为距父容器上边缘10像素的位置  
                    width : 100,  
                    height : 50,  
                    title : '子面板一' 
                },  
                {  
                    x : 90,//横坐标为距父容器左边缘90像素的位置  
                    y : 70,//纵坐标为距父容器上边缘70像素的位置  
                    width : 100,  
                    height : 50,  
                    title : '子面板二' 
                }  
            ]  

 4.FormLayout布局panel 
  var panel = new Ext.Panel({  
            title:'Ext.layout.FormLayout布局示例',  
            layout : 'form',  
            labelSeparator : ':',//在容器中指定分隔符  
            frame:true,//渲染面板  
            height : 110,  
            width : 300,  
            applyTo :'panel',  
            defaultType: 'textfield',//指定容器子元素默认的xtype类型为textfield  
            defaults : {//设置默认属性  
                msgTarget: 'side'//指定默认的错误信息提示方式  
            },  
            items: [  
                {  
                    fieldLabel:'用户名',  
                    allowBlank : false 
                },  
                {  
                    fieldLabel:'密码',  
                    allowBlank : false 
                }  
            ]  
        }) 

 5.ColumnLayout布局panel
 var panel = new Ext.Panel({  
            title:'Ext.layout.ColumnLayout布局示例',  
            layout : 'column',  
            frame:true,//渲染面板  
            height : 150,  
            width : 250,  
            applyTo :'panel',  
            defaults : {//设置默认属性  
                bodyStyle:'background-color:#FFFFFF;',//设置面板体的背景色  
                frame : true 
            },  
            items: [{  
                    title:'子面板一',  
                    width:100,//指定列宽为100像素  
                    height : 100  
                },  
                {  
                    title:'子面板二',  
                    width:100,//指定列宽为100像素  
                    height : 100  
                }  
            ]  
        })  
 
           或者:  
            items: [  
                {  
                    title:'子面板一',  
                    columnWidth:.3,//指定列宽为容器宽度的30%  
                    height : 100  
                },  
                {  
                    title:'子面板二',  
                    columnWidth:.7,//指定列宽为容器宽度的70%  
                    height : 100  
                }  
            ]  
 
          或者:  
            items: [  
                {  
                    title:'子面板一',  
                    width : 100,//指定列宽为100像素  
                    height : 100  
                },  
                {  
                    title:'子面板二',  
                    width : 100,  
                    columnWidth:.3,//指定列宽为容器剩余宽度的30%  
                    height : 100  
                },  
                {  
                    title:'子面板三',  
                    columnWidth:.7,//指定列宽为容器剩余宽度的70%  
                    height : 100  
                }  
            ]  

 6.layout.TableLayout布局panel  
        var panel = new Ext.Panel({  
            title:'Ext.layout.TableLayout布局示例',  
            layout : 'table',  
            layoutConfig : {  
                columns : 4 //设置表格布局默认列数为4列  
            },  
            frame:true,//渲染面板  
            height : 150,  
            applyTo :'panel',  
            defaults : {//设置默认属性  
                bodyStyle:'background-color:#FFFFFF;',//设置面板体的背景色  
                frame : true,  
                height : 50  
            },  
            items: [  
                {  
                    title:'子面板一',  
                    colspan : 3//设置跨列  
                },  
                {  
                    title:'子面板二',  
                    rowspan : 2,//设置跨行  
                    height : 100  
                },  
                {title:'子面板三'},  
                {title:'子面板四'},  
                {title:'子面板五'}  
            ]  
        })  

 7.layout.BorderLayout布局panel  
        var panel = new Ext.Panel({  
            title : 'Ext.layout.BorderLayout布局示例',  
            layout:'border',//表格布局  
            height : 250,  
            width : 400,  
            applyTo : 'panel',  
            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',  
                html : '右边',  
                region:'east',//指定子面板所在区域为east  
                width: 100  
            },{  
                title: 'Main Content',  
                html : '中间',  
                region:'center'//指定子面板所在区域为center  
            }]  
        });  

 8.Ext.Viewport布局示例  
        new Ext.Viewport({  
            title : 'Ext.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  
            }]  
        });  
 
  9.Ext.TabPanel 标签页示例  
        var tabPanel = new Ext.TabPanel({  
            height : 150,  
            width : 300,  
            activeTab : 0,//默认激活第一个tab页  
            animScroll : true,//使用动画滚动效果  
            enableTabScroll : true,//tab标签超宽时自动出现滚动按钮  
            applyTo : 'panel',  
            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内容'}  
            ]  
        });  

你可能感兴趣的:(Panel 页面布局篇)