讨论了如何创建组件,如何对组件进行校验,如何将组件与后台交互等。 当我们准备使用这些工具组件进行实际开发时,第一个浮现在脑海的就是要实现系统的界面布局即原型模型,在现有的开发模式下一般是设计人员根据客户需求通过viso 等工具设计出用户交互界面,然后由美工进行美化实现,最后交友开发人员进行填充业务代码进行交互实现。 EXT精美的组件让我们完全可以摒弃掉美工这个环节的开销和瓶颈,开发人员完全可以根据设计人员绘制出的交互界面通过EXT简单的实现出来。 那么我们如何使用EXT实现设计人员的交互界面呢,如何进行有效的布局呢。 如果没有使用过EXT的话第一个想法肯定是表格,iframe,frame等。 EXT使得布局的开发更加简单,让我们开始学习吧。
1. 概念
表格中分了行列,在设计时需要根据具体的布局设计好行数和列数,在EXT中也有类似的概念但是已经有很大的不同之处,建议初学时不要类比,因为反而会搞混。
EXT的两种布局方式,form,column 默认是 column,当使用column方式时可以设置columnWidth 来设置每一组组件占用的列宽 来对行进行分割。
这里不能直接映射理解为行、列,因为每次定义了一个column行 不意味着就会生成一行 然后再分割,再分割的时候可能会产生新的行。 理解为第一次定义行区域,第二次定义行区域,然后根据columnWidth进行对行分割。 比如将第一个区域分成两份,此时这两份如果只在分开的两个区域各创建一个组件则形成一个一行两列的区域,如果每个划分区域创建两个纵向(form)布局的组件,则形成一个两行两列的区域,如果各创建三个,则是三行三列的了。创建起来更简单了但是与原有分割方法有了很大的区别。
当要在上面的基础上再创建一行一列的区域时,则需要再划分出一个行区域 column布局,然后在此布局下创建form布局并且占满全格。
2. 实例:
Ext.onReady(function() {
Ext.QuickTips.init();
var form = new Ext.FormPanel({
title : "LayOut测试",
width : 800,
autoHeight : true,
frame : true,
lableAlight : "right",
lableWith : "10",
layout : 'form',
items : [{
layout : 'column',
items : [{
columnWidth : .3,
layout : 'form',
items : [{
xtype : 'textfield',
fieldLabel : 'First Name',
name : 'first',
anchor : '95%'
}, {
xtype : 'textfield',
fieldLabel : 'Company',
name : 'company',
anchor : '95%'
}, {
xtype : 'textfield',
fieldLabel : 'Company',
name : 'company',
anchor : '95%'
}]
}, {
columnWidth : .3,
layout : 'form',
items : [{
xtype : 'textfield',
fieldLabel : 'Last Name',
name : 'last',
anchor : '95%'
}, {
xtype : 'textfield',
fieldLabel : 'Email',
name : 'email',
vtype : 'email',
anchor : '95%'
}]
}, {
columnWidth : .3,
layout : 'form',
items : [{
xtype : 'textfield',
fieldLabel : 'Last Name',
name : 'last',
anchor : '95%'
}, {
xtype : 'textfield',
fieldLabel : 'Email',
name : 'email',
vtype : 'email',
anchor : '95%'
}]
}]
}, {
layout : 'column',
items : [{
layout : 'form',
items : [{
xtype : 'textfield',
fieldLabel : 'Last Name',
name : 'last',
anchor : '95%'
}]
}]
}]
});
form.render(Ext.getBody());
});
3. 小结:
布局这里说实话我总是想到表格,这样两个又映射不上反而把自己搞混了。 个人觉得还是不要去联想就按照EXT现有的布局方式去开发去理解。EXT 更像是在使用敏捷开发一样 什么时候想用的时候我就划分区域然后再分割,而表格则是在做之前就做了规划。
分享到:
相关推荐
ExtJS学习笔记.docExtJS学习笔记.docExtJS学习笔记.docExtJS学习笔记.doc
目录 1. ExtJs 结构树 2 2. 对ExtJs的态度 3 3. Ext.form概述 4 4. Ext.TabPanel篇 5 5. Function扩展篇 7 6. Ext.data.Store篇 10 7. Ext.data.JsonReader篇一 12 ...28. extJs 2.0学习笔记(ext.js篇) 77
Extjs4.0学习笔记,以下是部分介绍: xtjs4,创建Ext组件有了新的方式,就是Ext.create(....),而且可以使用动态加载JS的方式来加快组件的渲染,我们再也不必一次加载已经达到1MB的ext-all.js了,本文介绍如何在EXTJS4...
### Extjs 5 学习笔记之 SenchaCmd 深入解析 #### 一、SenchaCmd 的简介 SenchaCmd 是一个跨平台的命令行工具,它为基于 ExtJS 和 Sencha Touch 应用程序的开发周期提供了全面的支持。从创建应用程序的基础结构到...
EXTJS in Action 是一本专为学习EXTJS编写的书籍,但这里我们主要关注学习笔记中的关键知识点。 首先,EXTJS的目录结构非常重要,因为它包含了所有必要的资源和源码: 1. `adapter`:这部分包含了适配器,用于将...
适合ExtJs开发人员extjs技术上手以及深入
ExtJs简明教程+Extjs学习笔记,来源网络,免费奉送,我讨厌需要资源分~
本来我是打算自己写一个系列的 ExtJS 6 学习笔记的,因为 ExtJS 6 目前的中文 学习资料还很少。 google 搜索资料时找到了一本国外牛人写的关于 ExtJS 6 的电 子书 [Ext JS 6 By Example] 。这份资料在 PACKT 上卖 ...
语言程序设计资料:ExtJs学习笔记-2积分.doc
在探讨《ExtJS学习心得笔记》这一主题时,我们不仅会深入理解ExtJS框架的核心概念与实践技巧,还会从新手的角度出发,提炼出一系列有助于快速上手的学习策略,避免常见的学习陷阱,确保学习过程高效而有成效。...
这个学习笔记涵盖了从基础到高级的多个主题,帮助读者深入理解ExtJs的核心概念和技术。以下是一些关键知识点的详细说明: 1. **ExtJs 结构树**:这部分内容可能涉及ExtJs如何构建可自定义的用户界面组件树,包括...
Extjs4.0学习笔记大全.pdf,供大家学习
ExtJS 是一个强大的JavaScript框架,主要用于构建富客户端Web应用程序。...学习ExtJS可以帮助开发者快速构建功能丰富的、交互性强的Web应用。通过深入理解和实践,可以提升开发效率,创建出符合现代Web标准的用户界面。