`
czpae86
  • 浏览: 720232 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

第五章 Extjs如何实现“T”型系统首页布局 (入门教程)

阅读更多

第五章 Extjs如何实现“T”型系统首页布局 (入门教程)

 

看这章前,您有必要去看一下  EXT borderLayout图解(初学有用) 这遍文章。因为实现这种传统的应用系统布局,我们用了Extjs的borderLayout。系统截图如下:

 



 T型首页布局图

 

代码如下:

 

var WebApp = {};
WebApp.Desktop = function(){
	this.Banner = new Ext.Panel({
		region : "north",
		margins: '0 0 2 0',    
		contentEl : "header",			
		height : 62,
		bbar : this.createTopMenu()
	});	
	this.WestMenu = new Ext.Panel({
		region : "west",
		margins: '0 5 0 0',
		layout:'accordion',
		width : 200,
		items : [{
			title : "客户管理"
		},{
			title : "报表管理"
		},{
			title : "退货管理"
		}]
	});	
	this.MainPanel = new Ext.TabPanel({
		region : "center",
		activeTab: 0,
		items: [{
			title : '信息区',
			frame : true
		}]
	});			
	
	WebApp.Desktop.superclass.constructor.call(this, {
		layout : "border",
		items : [this.Banner, this.WestMenu, this.MainPanel]
	});    		
}
Ext.extend(WebApp.Desktop, Ext.Viewport, {
	createTopMenu : function(){
		return ['->',{
			xtype : "tbitem",
			autoEl : {
				tag: 'img',
				src: 'common/css/images/user_green.gif'    					
			}
		},{
			xtype : "tbtext",
			text : "用户名:czp"
		},'-',{
			xtype : "tbitem",
			autoEl : {
				tag: 'img',
				src: 'common/css/images/user_green.gif'    					
			}
		},{
			xtype : "tbtext",
			text : "部门:研发部"
		}]
	}
});
 

创建实例:

Ext.onReady(function(){
	new WebApp.Desktop();
});
 

这里无非用到了Extjs 的 border布局罢了。

 


  • 大小: 40.3 KB
  • 大小: 45.4 KB
分享到:
评论
16 楼 czpae86 2010-04-19  
equalto 写道
这样的extend,不如不要。
看见很多人的extend,不是产生一个“可复用”的组件,而是就做一个专门的功能,对ext的extend,真的是滥用。
如果页面不刷新的话,这样的代码,会致使“类”越来越多。
ext里面专门做了destroy,就是为了回收。


这样写是有原因的,这样的代码结构容易维护,面向对象,当然有类似当然直接复用。如果不这样写难道写成多个function?

如果页面不刷新的话,这样的代码,会致使“类”越来越多??
这个是什么原理??
15 楼 czpae86 2010-04-19  
atgoingguoat 写道
楼上的写的好。上次我在 ext.panel 加个 button,被事件的问题搞的要死。


建议先把Extjs里面的例子看了再说。
14 楼 czpae86 2010-04-19  

windlike 写道
关键是右边的tabpanel怎么写,里边要不要iframe,页面怎么写,关键的没说出来啊,光介绍布局有啥用


不用iframe,用autoLoad,或者其他动态加载
13 楼 atgoingguoat 2010-03-27  
楼上的写的好。上次我在 ext.panel 加个 button,被事件的问题搞的要死。
12 楼 equalto 2010-03-24  
这样的extend,不如不要。
看见很多人的extend,不是产生一个“可复用”的组件,而是就做一个专门的功能,对ext的extend,真的是滥用。
如果页面不刷新的话,这样的代码,会致使“类”越来越多。
ext里面专门做了destroy,就是为了回收。
11 楼 jasonw68 2010-03-24  
提示:EXT-all.js不支持此接口
10 楼 pipilu 2010-02-22  
楼主继续啊。期待更多的文章
9 楼 54powerman 2010-02-20  
学习中,试试看。
8 楼 00915132 2010-02-20  
284630191 写道
smilebug 写道
windlike 写道
关键是右边的tabpanel怎么写,里边要不要iframe,页面怎么写,关键的没说出来啊,光介绍布局有啥用

直接建个tabpanel把你多个组件放到items里面就可以了,至于使不使用iframe这个就要看你怎么设置你的组件了,一般是不需要iframe的
var tabs = new Ext.TabPanel({
    activeTab: 0,
    items:[
        {contentEl:'tab1', title:'Tab 1'},
        {contentEl:'tab2', title:'Tab 2'}
    ]
});


你这样是写死的,那我想动态加载呢?


貌似楼主已经注明是新手有用了......
如果要动态在界面出来前异步拿,然后再弄出来,如果是渲染之后的动态就动态的add/remove,这些都extjs都可以做
7 楼 284630191 2010-02-10  
smilebug 写道
windlike 写道
关键是右边的tabpanel怎么写,里边要不要iframe,页面怎么写,关键的没说出来啊,光介绍布局有啥用

直接建个tabpanel把你多个组件放到items里面就可以了,至于使不使用iframe这个就要看你怎么设置你的组件了,一般是不需要iframe的
var tabs = new Ext.TabPanel({
    activeTab: 0,
    items:[
        {contentEl:'tab1', title:'Tab 1'},
        {contentEl:'tab2', title:'Tab 2'}
    ]
});


你这样是写死的,那我想动态加载呢?
6 楼 liuzk86 2010-02-10  
呵呵,顶...
5 楼 smilebug 2010-02-09  
mr.a 写道
关键是上边的用户名怎么处理?

bbar : this.createTopMenu()
这里就是创建用户名那块,你看createTopMenu()方法说白了就是一个数组,里面是些字符串和JSON对象
至于具体含义像'->'(居右对齐)这样的缩写可以在extjs官网查下API,找Toolbar,里面有详细说明
而关于xtype的定义即代表什么组件,可以在Component里找到
4 楼 smilebug 2010-02-09  
windlike 写道
关键是右边的tabpanel怎么写,里边要不要iframe,页面怎么写,关键的没说出来啊,光介绍布局有啥用

直接建个tabpanel把你多个组件放到items里面就可以了,至于使不使用iframe这个就要看你怎么设置你的组件了,一般是不需要iframe的
var tabs = new Ext.TabPanel({
    activeTab: 0,
    items:[
        {contentEl:'tab1', title:'Tab 1'},
        {contentEl:'tab2', title:'Tab 2'}
    ]
});
3 楼 mr.a 2010-02-09  
关键是上边的用户名怎么处理?
2 楼 windlike 2010-02-09  
关键是右边的tabpanel怎么写,里边要不要iframe,页面怎么写,关键的没说出来啊,光介绍布局有啥用
1 楼 kaki 2010-02-09  
关键是左边的树如何处理?

相关推荐

    extjs的快速入门教程

    ### ExtJS快速入门教程知识点概览 #### 一、ExtJS简介 - **定义**: ExtJS是一个用JavaScript编写的前端框架,旨在简化Web应用程序的开发过程,尤其适用于创建丰富的交互式用户界面(RIA)。它独立于后端技术,可以...

    Extjs4.1.1

    第十一讲.ExtJS布局模式-Box布局、使用ViewPort布局首页 第十二讲.ExtJS之Ext常用函数 第十三讲.ExtJS之Ext常用函数(二) 第十四讲.初识Ajax 第十五讲.ExtJS对Ajax支持-注册用户实例 第十六讲.ExtJS对Ajax...

    extjs入门教程

    ### ExtJS 入门教程详解 #### 一、ExtJS 概览 ##### 1.1 ExtJS 定义及特点 - **定义**: ExtJS 是一款强大的前端框架,主要用于构建复杂的用户界面(UI),其核心特性在于它是一个与后台技术相对独立的前端 AJAX ...

    extjs入门.pdf

    - **Hello World 示例**:作为初学者的第一步,可以通过实现简单的 Hello World 示例了解 ExtJS 的基本用法和组件构建流程。 - **代码结构**:首先需要引入 ExtJS 库文件,然后定义一个容器(Container),并在其中...

    深入浅出ExtJS(第2版).

    根据提供的标题、描述和标签,我们可以看出这是一本关于ExtJS技术的书籍——《深入浅出ExtJS(第2版)》。虽然给定的部分内容并没有提供具体的技术细节,但根据书名及其版本号,我们可以推测这本书是针对ExtJS框架...

    extjs中文教程

    本教程将指导你如何入门ExtJS,从认识ExtJS的安装开始,涵盖创建警告框、使用各种组件,一直到实现复杂的数据交互和界面元素操作。 ### 第一部分:准备与资源 在开始学习ExtJS之前,需要做好相应的准备工作,包括...

    extjs入门文档

    ### ExtJS 入门文档知识点概述 #### 一、ExtJS 概述 ExtJS 是一款基于 JavaScript 的开源前端框架,主要用于构建复杂的企业级 Web 应用程序。它提供了丰富的 UI 组件库以及数据处理能力,能够帮助开发者快速构建...

    EXTJS实用开发指南

    - **adapter**: 负责将第三方底层库映射为 EXTJS 所支持的底层库。 - **build**: 包含压缩后的 EXTJS 全部源码,按类别进行存放。 - **docs**: 提供 API 帮助文档。 - **examples**: 包含使用 EXTJS 技术实现的各种...

    ExtJs 学习资料(英文)

    3. **组件与布局**:讲解 ExtJs 中各种组件的使用方法,如按钮、面板等,并介绍不同类型的布局方式。 4. **事件处理与动画效果**:探讨如何处理用户交互事件,实现动画效果来提升用户体验。 5. **数据管理**:讲解...

    轻松搞定ext

    对于初学者而言,ExtJS的学习曲线虽然陡峭,但通过系统的学习资料,如《轻松搞定ExtJS》这样的教程,可以有效地降低入门难度,帮助新学员迅速掌握框架的基本使用。 #### 第二章:准备与资源 在开始学习ExtJS之前,...

    Ext中文文档

    #### 第五章:页面与脚本完全分离 - **Extjs是脚本的世界**:强调了JavaScript在ExtJS中的核心地位,以及如何通过脚本来控制页面的行为。 - **Ext.onReady事件**:讲解了如何使用Ext.onReady事件来确保页面加载完成...

    EXT技术教学资源pdf文档

    - **教程**:教程包含了ExtJS的新手入门、组件体系结构及使用、各控件的使用方法及示例应用等内容,非常适合初学者。 - **实践项目**:教程推荐了一个基于ExtJS 2.0开发的单用户Blog系统(wlr.easyjf.com),通过...

    Ext JS in Action (Final Edition).pdf

    - **第五部分:待续...** - 此部分信息不全,可能包含了更多关于Ext JS的高级主题和实践技巧。 #### 三、核心概念与技术 1. **事件处理机制**:Ext JS提供了一套完善的事件处理系统,允许开发者通过绑定事件监听器...

    Ext 经典教程

    ### Ext经典教程:从入门到精通 #### 一、初识Ext Ext是一个功能强大的JavaScript框架,用于构建桌面级Web应用程序。它简化了DOM操作、事件处理和Ajax交互,提供了丰富的UI组件,使得开发者能够轻松创建高度交互性...

Global site tag (gtag.js) - Google Analytics