a.flex 配置项

flex 配置项不是设置在布局上,而是设置在子项的配置项。每个子项相对的 flex 值都会与全体子项 flex 累加的值相比较,根据此结果,处理每个子项的 flex 最后是多少。若不设置子项的 flex,表示不对子项作自适应尺寸的处理,相当于 flex = 0 的子项或 flex = undefined 的时候,表示子项不会自伸缩处理,而采用最初的尺寸。

{
layoutConfig: {
padding:'5',
align:'top'
},
defaults:{margins:'0 5 0 0'},
items:[{
xtype:'button',
text: 'Button 1',
flex:1
},{
xtype:'button',
text: 'Button 2',
flex:1
},{
xtype:'button',
text: 'Button 3',
flex:1
},{
xtype:'button',
text: 'Button 4',
flex:3,
margins:'0'
}]
}

当然我们可以 Vbox 布局中内嵌 hbox 布局,或者 hbox 中内嵌 vbox,HBox 和 VBox 之间是可以允许嵌套布局的,但实际不必如此手动去做, Ext 为我们提供了“对齐 align/pack”的这一对方向各异的调整配置,

代替了上述“内嵌”的这一种稍微让人感觉别扭。容器中每一个子项都遵循用户指定的 align/pack 对齐方式。一般设置的地方是在容器的 layoutConfig 配置项对象中,如下面某一个容器的代码片断:

对于垂直布局的 VBox 而言,属性 align 就是水平对齐的设置了,align 有以下可选项:

键值 作用
left 居左,从容器的 left开始水平对齐。这是系统默认的选项。
center 居中,从容器的mid-width开始垂直对齐。
stretcn 拉伸子项以填充容器的水平宽度。
stretcnmax 拿最宽的那个子项拉伸,适应容器的水平宽度。
属性pack是控制容器里面的子项是如何停靠的,这是垂直方向本身的对齐。有如以下设置:

键值 作用
start 居顶,从容器的top停靠子项。这是系统默认的选项。
center 居中,也就是子项都从容器的mid-height上开始停靠。
end 居底,从容器的底部边边开始往上摆子组件。
对于水平布局的HBox而言,align就是决定如何垂直对齐,align的可选项有如下:

键值 作用
top 顶部对齐,从容器的top开始垂直对齐。
middle 居中对齐,从容器的middle开始垂直对齐。
stretch 拉伸子项以填充容器的垂直高度。
stretchmax 拿最高的那个子项拉伸,适应容器的垂直高度。
pack的可选项有以下几种:

键值 作用
start 居左,从左边开始排列内容。
center 居中,也就是从容器的mid-width开始停靠内容。
end 居右,从容器的右边开始停靠内容。

BoxLayout 可设置外边距(margins)。关于 defaultMargins,就是如果不制定每个子项的 margins 属性,那么就会使用默认的 margins。

默认为 {top:0, right:0, bottom:0, left:0} 。margin 属性接纳的格式也可以是字符串的,规定为空格隔开,数字类型的 margin 值。各个方向的排列顺序为 CSS 的顺序:

如果只是一个值,就是各个方向都是这个值。
如果有两个值,那么第一个值代表是上下方向的值,第二值则是左右方向的值。
如果有三个值,第一个值是顶部的值,第二个值是左右两边的值,第三个值是底部的值。
如果有四个值,分别代表就是顶部、右边、底部和左边的值(为方便记忆,可理解为顺时针方向)。
BoxLayout 可设置内边距(padding)。跟 defaultMargins 差不多,padding 属性接纳的格式也可以是字符串的,其格式规定为空格隔开,数字类型的 margin 值。各个方向的排列顺序为 CSS 的顺序。

extjs 箱子布局的更多相关文章

  1. ExtJs常用布局--layout详解(含实例)

    序言: 笔者用的ExtJs版本:ext-3.2.0 ExtJs常见的布局方式有:border.form.absolute.column.accordion.table.fit.card.anchor ...

  2. Extjs Column布局常见问题及解决方法

    原文地址:http://blog.csdn.net/weoln/article/details/4339533 第一次用Extjs的column布局时遇见了很多问题,记录下来,供大家参考.column ...

  3. Extjs Vbox布局方式,以及align种类,flex,pack属性含义简介

    VBox布局方式,熟悉下一下几个主要属性: 一.align:字符类型,指示组件在容器内的对齐方式.这个是基于容器的左上角来排列的.pack不同,pack是根据容器的最上边来显示的. 1.left(默认 ...

  4. 【ExtJS】 布局Layout

    布局用于定义容器如何组织内部子元素和控制子元素的大小. ExtJS中有两种类型的布局:Container容器类布局与Component组件类布局. Containter容器类布局:负责容器内容Extj ...

  5. 自己动手写UI库——引入ExtJs(布局)

    第一: 来看一下最终的效果 第二: 来看一下使用方法: 第三: Component类代码如下所示: public class Component     {                   pub ...

  6. ExtJs FormPanel布局

    FormPanel有两种布局:form和column,form是纵向布局,column为横向布局.默认为后者.使用layout属性定义布局类型.对于一个复杂的布局表单,最重要的是正确分割,分割结果直接 ...

  7. 3.ExtJs常用布局--layout详解(含实例)

    转自:https://blog.csdn.net/fifteen718/article/details/51482826

  8. Extjs Form用法详解(适用于Extjs5)

    Extjs Form是一个比较常用的控件,主要用来显示和编辑数据的,今天这篇文章将介绍Extjs Form控件的详细用法,包括创建Form.添加子项.加载和更新数据.验证等. 本文的示例代码适用于Ex ...

  9. extjs 学习笔记(二)

    EXTJS实用开发指南 1. 要使用ExtJS 框架的页面中一般包括下面几句: <link rel="stylesheet" type="text/css" ...

随机推荐

  1. 日常使用 Git 的 19 个建议[转]

    我使用Git已经有4年之久,在这里想分享一些实用的小技巧,希望能对大家有所帮助. 如果你对git一无所知,那么我建议先去读一下Git 常用命令速查.本篇文章主要适合有一定 git 使用基础的人群. 目 ...

  2. (三)策略模式-C++实现

    策略模式:定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换,本模式使得算法可独立于使用它的客户而变化. 三种角色: 1.策略:一个抽象类,这个接口定义了若干个算法标识,即多个虚函数,这些个 ...

  3. HDU 5015 233 Matrix --矩阵快速幂

    题意:给出矩阵的第0行(233,2333,23333,...)和第0列a1,a2,...an(n<=10,m<=10^9),给出式子: A[i][j] = A[i-1][j] + A[i] ...

  4. using关键字的用法

    1.using 关键字可以用来导命名空间,与java中的import类似. 2.using关键字可以用来释放资源,并且被释放的资源代码是非托管代码. 既然可以释放非托管代码,那么什么是非托管代码? 我 ...

  5. C++在字符串前加一个L作用:

    在字符串前加一个L作用:    如 L"我的字符串" 表示将ANSI字符串转换成unicode的字符串,就是每个字符占用两个字节.    strlen("asd" ...

  6. java 27 - 7 反射之 通过反射越过泛型检查

    之前学过的集合里面都有泛型,规定了泛型的类型以后,就不能往这个集合添加除了这个类型之外的类型数据了. 那么,有什么方法可以越过这个泛型,添加特定类型以外的类型数据么? 例子:  往ArrayList& ...

  7. stl学习(二)集合 set 的使用

    set集合容器底层由红黑树实现,是平衡二叉搜索树. 相对stl中的list.deque效率更高. 注意:由于集合 的 性质,单纯的 set 不允许重复的元素 初始化 / 清空 函数 : clear() ...

  8. 理解android.intent.action.MAIN 与 android.intent.category.LAUNCHER

    刚才看了一下sundy的视频<LLY110426_Android应用程序启动>,里面讲到luncher这个activity通过获取应用程序信息来加载应用程序,显示给用户,其中就是通过一个应 ...

  9. Dubbo架构设计详解

    from:http://shiyanjun.cn/archives/325.html Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解 ...

  10. Python的高级特性6:使用__slots__真的能省很多内存

    在伯乐在线上看到了这篇文章,用Python的 __slots__ 节省9G内存,于是想测试下,对单个类,用__slots__节省内存效果会不会明显. 看完这个例子后,我们也会明白__slots__是用 ...