所谓布局就是指容器组件中子元素的分布、排列组合方式。Ext 的所有容器组件都支持而局
操作,每一个容器都会有一个对应的布局,布局负责管理容器组件中子元素的排列、组合及
渲染方式等。
ExtJS 的布局基类为Ext.layout.ContainerLayout,其它布局都是继承该类。ExtJS 的
容器组件包含一个layout 及layoutConfig 配置属性,这两个属性用来指定容器使用的布局及
布局的详细配置信息,如果没有指定容器组件的layout 则默认会使用ContainerLayout 作为
布局,该布局只是简单的把元素放到容器中,有的布局需要layoutConfig 配置,有的则不需
要layoutConfig 配置。看代码:
Ext.onReady(function(){ new Ext.Panel({ renderTo:"hello", width:400, height:200, layout:"column", items:[{columnWidth:.5, title:"面板1"}, {columnWidth:.5, title:"面板2"}] }); });
上面的代码我们创建了一个面板Panel,Panle 是一个容器组件,我们使用layout 指定该
面板使用Column 布局。该面板的子元素是两个面板,这两个面板都包含了一个与列布局相
关的配置参数属性columnWidth,他们的值都是0.5,也就是每一个面板占一半的宽度。
Ext中的一些容器组件都已经指定所使用的布局,比如TabPanel使用card布局、
FormPanel使用form布局,GridPanel中的表格使用column布局等,我们在使用这些组件的
时候,不能给这些容器组件再指定另外的布局。
ExtJS2.0 一共包含十种布局,常用的布局有border、column、fit、form、card、tabel
等布局。