一步一步学习ExtJS4 - 页面布局(图文实例)主讲:许家志
更新时间:2024-04-01 04:34:01 阅读量: 综合文库 文档下载
- 一步一步学画画推荐度:
- 相关推荐
一步一步学习ExtJS4.0——页面布局
——许家志
目标效果:
这种布局方式,经常在一些大型的B/S后台系统中可以看得到,应用的主要是Accordion布局还有Border布局,具有广泛的应用价值,这节我们主要讲简单的布局实现,美工以及事件响应将在下一节讲 先决条件:
从ExtJS4.0的官方网站上面下载了Ext的开发包,然后引用到你的案例中,这里我们的引用顺序是固定的, 先引用外观(CSS),在引用行为(JS)
在这个例子中,加上自己的脚本文件,我是这样引用的:
ExtJS为我们提供了丰富的组件,我们为我们用到的进行讲解,首先是Panel,下图为Ext4.0帮助文档中的截图,主要介绍了Ext.Panel的各种配置属性(config)
下面我们用里面的简单几个属性,来构造一个最简单的面板,代码如下:
效果图如下:
小例子中定义了一个新的Panel ,通过new Ext.Panel()方法来实现,其中方法参数为一个包含了各种参数配置的的Jason格式对象{key:value,??},这里我们用的只有几个而已,截图中已经做出了注释,不难看出,所有的配置属性,都是我们熟知的英文单词,这为我们同时学习专业英语也提供了一个难能可贵的契机。
第一部分 Border布局
在本实例中呢,我们需要特地试用几个比较特别配置属性,他们分别是layout,border,和region,layout指定了在该面板中,试用的布局方式,而border则配置面板是否含有边框(1个像素),最后region则是在viewport中用来实现指定方位的
实例中不难看出,我们的页面中包含了3个面板,分别占据了上,左和右,其实,在ExtJS中,他的region为我们提供了4个方位为我们布局,分别为东南西北中,对应的属性值也是对应的英文,分别为east,south,west,north,center.记忆方位也很简单,我们看地图的“上北下南左西右东”标准,为了实现本例中的效果,我们这里先构建虽简单的三个面板,为了确定其方位,必须指定其方位,代码如下: var panelNorth=new Ext.Panel({region:'north'})///上 var panelWest=new Ext.Panel({region:'west'})///左 var panelCenter=new Ext.Panel({region:'center'})///中 我们这里所创建的三个面板要通过Viewport来组装到一个页面上,这里我们也定义一个函数来完成这个功能,需要说明的是,layout在这种情况下,必须使用border,这样才能看到我们分开的3个区域,
buildAViewport=function(){ var v=new Ext.Viewport({ layout:'border', items:[panelNorth,panelWest,panelCenter] }) 这样我们只需要在Ext.onReady事件中把这一个函数运行起来,就可以在页面中看到我们构建的三个区域,只是在此时,三个panel的样式都是很低级的,什么也没有,我们这时通过其他选项来丰富他一下,这里我们一个一个来,首先是上面,我们将构建参数修改如下
上:
左:
此时,我们得到的页面也算是差不多整体布局出来了
在此之前呢,我们所讲的完全围绕着的是Border布局,下面呢为了完善整个页面,中间呢,我们可能会遇到一些小小的问题,这里我们可以通过实验来解决。
1. 为什么在Viewport的设置参数里面,非要用border?
原因很简单,相信做过web设计的人都曾遇到过这样一个问题“为什么要在具体实现左右布局的时候要用到float属性”,这样对比理解就可以了,border布局,实现了部分面板的float属性,使我们的页面显得更为灵活,不至于一片上下,而无左右。朋友们可以使用注释 layout属性的方法来试验一下。
2. 为什么我在使用了Border布局之后,出现了”SCRIPT5007: 无法获取属性“flex”的值: 对
象为 null 或未定义”的错误?
细心的朋友可能会发现了,在使用了border布局之后,必须拥有的一个region为center面板,否则就会出现上述错误,哪怕在在viewport的所有属性中最后只有一个center面板,也不会有错误,但若是没有,则肯定会错。这就好像国不可一日无君一样。这里朋友们可以单独对items进行部分注释来进行试验
3. 为什么我的文字显示不完整?
这不是你的错,只是因为现在的4版本对 IE9的支持上,文字显示就是不全,解决起来也只能是,按F12,打开开发人员工具条,在里面设置 浏览器模式 为 IE8
第二部分 Accordion布局
通过前面的布局我们把整个页面布局给搭建好了,现在我们需要做的是将 左边的面板填充上一个可折叠的菜单条,在之前,我们先建立一个menu的对象,代码如下:
var txtMenu=\class='menu'>ExtJS简介ExtJS预备知识UI设计——常用组件UI设计——布局行为处理——事件机制\ var menu=[{title:\第一天\: true,align:'center'},{title:\第三天\第四天\第五天\第六天\
这里首先为菜单静态的创建了几个想选项,主要涉及到的构造属性有title以及html,当然还可以加载页面,这里我们简单介绍,那么接下来我们要做的就是要改变westPanel来实现可折叠布局,下面为改
变后的代码:
这时候我们在运行的时候,就达到了最终的预期效果了:
Accordion翻译过来手风琴,联想到他,也不难理解为什么又叫做可折叠布局了。如果想要“按键“更加漂亮的话,可以再通过把iconCls加到我们设置的menu中去,然后通过menu为Ico设置美工样式
依旧是老步骤,简单说一个容易出现的问题: 为什么我把代码都敲入了,但是没有出现菜单?
在其他语言诸如C#等等的朋友容易认为变量的定义前后顺序是没有关系的,因为在他们的编译过程中,经过统一的编译后对前后顺序已经没有了限制,但是javascript则不同,javascript从上到下一句一句顺序执行,所以刚才的txtMenu以及menu定义的代码要敲在westPanel之前才可以。
本节课程就到这里,欢迎继续关注ExtJS4.0的系列教程! 天天开心~
2012-2-6
正在阅读:
一步一步学习ExtJS4 - 页面布局(图文实例)主讲:许家志04-01
南京市徐庄软件产业基地国际软件城 建筑与景观设计合同书04-25
9A和9B词组、句型及语法复习提纲12-10
安全生产2施工方案03-24
定义判断10-19
化粪池02S701图集工程量08-13
管易软件EC-ERP电子商务整体方案+08-26
富有的是精神 教学设计09-21
“教师助导,四轮驱动”成就高效课堂03-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 许家
- 主讲
- 布局
- 实例
- 页面
- 图文
- ExtJS4
- 学习
- 有理数复习导学案
- 全国2008年4月高等教育自学考试预防医学(二)试题
- 《公文与写作》复习题答案
- “十三五”重点项目-社会救助项目商业计划书
- 莒县汽车站发车时刻表
- 政银企座谈会讲话
- 上海二年级上数学教案
- 11-金黄色葡萄球菌PFGE方案
- 室外景观监理实施细则 - 图文
- 关于加强对行政部工作职能的通知
- 教学四项经费管理与实施办法(试行)
- 2013初中九年级全套体育教案(共36课)
- 山东省德州市高三文综三轮复习试题 - 图文
- 基于《消防给水及消火栓系统技术规范》GB50974-2014颁布实施的两
- 工程建设监理·随堂练习2018秋华南理工大学网络教育答案
- 中华人民共和国海关关于简化进出境旅客通关手续的公告
- 川地税发〔2012〕47号-关于西部大开发企业所得税优惠政策管理有
- 初中历史案例第6部分
- DIY服饰创业计划书
- 教育体育局“我们的节日·中秋节”主题活动方案