`
JaNer
  • 浏览: 45045 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

E3.Tree与EXT.Layout完美整合篇

阅读更多

E3在线演示地址:http://www.javae3.com/Index.jsp

同学们,熊师讲坛又开讲了。。。 音乐。。。 掌声。。。鲜花。。。美女。。。

课程题目:
『E3.Tree与EXT.Layout完美整合篇』
讲师:
E3首席讲师.XiongChun
必备知识:
(1)、已经学习并掌握了我的上一篇教程-【E3.Tree入门与进阶篇】
(2)、对EXT有一定了解和认识

1.广告时间
1.1.E3简介
由国人黄老大以“分享经验-传递价值-成就你我”为理念,发起并创办的一个致力于JavaEE公共应用组件的开源组织。目前已经成功推出E3.Tree、E3.Resource、E3.Table、E3.IDGenerator四个开源组件。
官方网站:http://www.javae3.com QQGroup: 63787587
1.2.EXT简介
我们的英雄Jack站在无数巨人的肩膀上成就出的一个伟大的Web UI富客户端表现层框架。我想就不必再多说了,你要是连她都不认识,那我也无语了。
官方网站:http://extjs.com
1.3.作者简介
目前头衔:E3首席讲师,致力于E3各开源组件的的宣传与推广工作,负责E3用户的培训与支持.
我的心愿:如果你觉得教程对你有帮助的话,可否去帮我浇浇花水,偶养滴花快开始长果果了,谢谢了
http://user.qzone.qq.com/307916217
2.进入主题
2.1.为什么要将E3.Tree和EXT.Layout布局整合?
目前绝大多数的JavaEE企业应用的布局都是采用FrameSet的结构来实现,在缺乏专业美工的和精湛的CSS和JS功底的情况下很难做出酷炫的布局界面。大多呆板,丑陋不堪入目。而EXT.Layout提供了非常漂亮和酷炫的布局方案,通过Div将页面分为north,west,east, south,center五个区域,我们可以根据自己的需要来灵活的组装,而且每一个区域都提供了很多贴心的小工具比如平滑的收缩,展开等等。而我们的 E3.Tree的话则是屏蔽了各种JS树模型的差异(目前支持XTree和EXT.Tree)提供统一的Java编程接口的一个方便易用的开源组件。可用于展示具有树结构的数据模型,比如我们常用的导航菜单以及权限管理的组织机构模型等等。所以将Ext.Layut和E3.Tree整合便可以方便快捷的实现我们JavaEE Web应用系统的一个酷炫的布局结构。
2.2.效果截图
我们先来看一下整合后的效果图,如果您感兴趣的话就继续往下看,如果你已经掌握了相关的布局方案的话那就赶紧离开,不必再浪费时间了。
图一:正常加载后的效果图

图二:边栏被收缩后的效果图

图三:边栏根据鼠标事件临时展开的效果图

3.实现步骤
3.1.分别下载Ext2.0和E3.Tree的相关资源,并引入到工程中来.关于EXT资源的引入请参阅其他文章,Google一下就有,限于篇幅就不再赘述了;关于E3.Tree资源的引入请参阅我的上一篇教程E3.Tree入门与进阶篇.
3.2.新建一个JSP文件.
3.2.1.导入Ext资源

<%@ page contentType="text/html; charset=GBK"%>
<%-- 加载所需CSS文件 --%>
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/uilib/ext2.0/resources/css/ext-all.css"/>
<%-- 加载所需的JS文件 --%>
<script type="text/javascript" src="${pageContext.request.contextPath}/uilib/ext2.0/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/uilib/ext2.0/ext-all.js"></script>


3.2.2.使用Ext语法构建Ext.Layout布局

<script type="text/javascript">
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '${pageContext.request.contextPath}/uilib/ext2.0/resources/images/default/s.gif';
      new Ext.Viewport({
             layout:'border',
             items:[
                    new Ext.BoxComponent({
                         region:'north',
                         el: 'north',//填充指定id的区域内容到north区域,若不设该属性,请通过html:'内容',设置区域内容
                         height:0
                   }),new Ext.BoxComponent({
                         region:'south',
                         el: 'south',
                         height:20
                   }),{
                        region:'center',
                        title:'**县人民政府网站管理后台',
                        autoScroll:true,
                        contentEl:'center'
                   },{
                       region:'west',
                       width: 200,
                       collapsible: true,
                       minSize: 100,
                       maxSize: 300,
                       split: true,
                       title: 'eRed门户网站通用平台 V 0.1',
                       layout:'accordion',
                       layoutConfig:{
                        animate:true
                       },
                    items: [{
                    title:'系统管理菜单',
                    autoScroll:true,
                    border:false,
                    contentEl: 'tree',
                    iconCls:'settings'
                },{
                    title:'业务功能菜单',
                    html: '<font size=2px>显示和业务相关的菜单</font>',
                    border:false,
                    autoScroll:true,
                    iconCls:'nav'
                   },{
                    title:'安全选项',
                    html: '<font size=2px>显示和安全选项相关的菜单</font>',
                    border:false,
                    autoScroll:true,
                    iconCls:'security'
                   },{
                    title:'关于eRedLab',
                    html: '<font size=2px>显示eRedLab的相关信息</font>',
                    border:false,
                    autoScroll:true,
                    iconCls:'about'
                   }]
                   }]
            });
       });


3.2.3.大家可能注意到了上面Ext语法中的el和contentEl属性,他们都对应Div的ID属性值,表示把这个DIV与相应的EXT布局关联起来.比如 contentEl: 'tree',即表示ID为"tree"这个DIV与Ext.Layout布局的west区域关联.下面我们看上面EXT语法程序中所关联的几个DIV

<div id="north"> 
</div>
<div id="south" class="copyRight"> 
Copyright© 2008 eRedLab® 东方红软件实验室 中国.昆明 理念:分享经验-传递价值-成就你我
</div>


(1)、可能大家注意到了,并没有创建ID为"tree"的Div,这是因为下面E3.Tree在构建树的时候已经创建了以个ID为"tree"的Div,我们只需要直接使用以下语句即可:
${treeScript}
(2)、还有一个DIV需要着重介绍一下,就是用来显示业务办理区域的DIV,如下所示:
<div id="center">
<iframe name="mainFrame" class="mainFrame" frameborder="0"></iframe>
</div>
大家看到了,我内嵌了一个iframe,这个就可以用来显示点击E3.Tree菜单后的业务办理区域.当然,得配合E3.Tree的树节点单击事件来指定,如下所示:
function doAction(url){
parent.mainFrame.location.href = url;
}
如果你看到这有点糊涂的话,还是那句老话,先去看我的第一篇教程.E3.Tree入门与进阶.

3.2.4.附上我的完整的JSP文件供参考.


下课。。。。。

课程表:
课程名:『E3.Table初级应用』
发表时间:2008-06-01
发表地点: JavaEye, E3官方论坛, 作者技术Blog 同步发表

分享到:
评论
4 楼 huangyh 2008-08-23  
演示地址修改通知

e3下载http://www.javae3.com
演示系统http://www.javae3.com:8001/e3/Index.jsp

3 楼 JaNer 2008-07-17  
E3在线演示地址:http://www.javae3.com/Index.jsp
2 楼 JaNer 2008-05-29  
huangyh 写道
图文并茂,老师,动态树还没讲呢?什么时候开课?


那个会在『E3.Tree高级应用』里讲。等偶先由那方面的实践经验再讲,偶总不能误人子弟撒。。。
1 楼 huangyh 2008-05-29  
图文并茂,老师,动态树还没讲呢?什么时候开课?

相关推荐

    E3tree开发文档

    同时,E3.Tree与struts、hibernate和spring等框架的兼容性,使得在开发环境中集成E3.Tree变得容易,能够显著提高开发效率。 在实际开发中,你需要根据项目需求选择合适的树型结构和配置相应的属性,同时注意版本...

    E3.tree开发文档以及使用手册

    《E3.tree开发文档及使用手册》是一份详尽的资源,主要针对E3.tree这一JavaScript组件进行深入解析。E3.tree是一款强大的前端数据展示工具,尤其适用于构建层级结构的数据视图,例如组织架构、文件目录等。它以其...

    e3.tree 1.5 发布,很好,很强大,有截图[转]

    标题中的“e3.tree 1.5”指的是一个软件组件或框架的新版本发布,它可能是一个用于构建用户界面,特别是树形结构展示的库。"1.5"是它的版本号,通常意味着对前一版本的功能增强、性能优化或者bug修复。关键词"很好,...

    e3tree参考手册

    1. **Java版本**:E3.Tree通常与Java 7或更高版本兼容,具体依赖于其发布时支持的最新版本。 2. **Web服务器**:任何支持Servlet 3.0及以上版本的Web服务器,如Tomcat、Jetty等。 3. **开发工具**:IDEA、Eclipse等...

    E3 最新例子包,包括table,tree等

    E3从07年10月份推出后,到目前经历1年多时间的发展,旗下已经有E3.Tree、E3.Table、 E3.ID、E3.Resource和E3.Calendar等组件,在整个E3团队的努力下,这些组件日趋成熟。 为了让更多人了解,认识并在项目中去使用E3,E3...

    EDA软件:Zuken E3.series二次开发-API接口与脚本编程+基础知识+CAD集成+数据库接口+案例研究等全套教程

    EDA软件:Zuken E3.series二次开发_API接口与脚本编程.docx EDA软件:Zuken E3.series二次开发_EDA软件基础知识.docx EDA软件:Zuken E3.series二次开发_ZukenE3.series概述.docx EDA软件:Zuken E3.series二次开发_...

    PCB设计软件:Zuken E3.series二次开发-ZukenE3.seriesAPI介绍与使用

    PCB设计软件:Zuken E3.series二次开发_ZukenE3.seriesAPI介绍与使用.docx PCB设计软件:Zuken E3.series二次开发_ZukenE3.series二次开发基础.docx PCB设计软件:Zuken E3.series二次开发_ZukenE3.series数据结构与...

    E3Tree参考手册,很实用

    E3.Tree参考手册是为开发者提供详细指导和帮助的文档,它涵盖了从安装配置到实际应用的全过程。 **简介** E3.Tree的核心在于提供了一种优化的树数据结构实现,适用于构建复杂的数据组织和检索系统。它支持快速的...

    E3Tree开发文档

    - **API使用**:E3.Tree支持通过API直接调用的方式构建树形结构,这种方式仅需遵循JSP 1.2和Servlet 2.3标准即可。 - **Taglib使用**:提供了一种更为简便的方法来构建树形结构,但需要JSP 2.0和Servlet 2.4标准的...

    PC设计软件:Zuken E3.series二次开发-ZukenE3.seriesAPI使用指南

    PC设计软件:Zuken E3.series二次开发_ZukenE3.series与外部系统的数据交换.docx PC设计软件:Zuken E3.series二次开发_ZukenE3.series二次开发入门.docx PC设计软件:Zuken E3.series二次开发_ZukenE3.series二次...

    E3开发指南.pdf

    - **定义与用途**: E3.Tree 是一个用于构建树形结构的组件,广泛应用于展示具有层级关系的数据,如组织结构图、文件系统等。 - **特性**: 支持静态树和动态树,可以根据数据源的不同选择合适的加载方式;支持多种...

    cat4500e-universalk9.SPA.03.05.03.E.152-1.E3.bin

    cat4500e-universalk9.SPA.03.05.03.E.152-1.E3.bin。思科4500系列IOS,可用于4506/4507交换机。

    E3-table-1.3.zip_E3.TABLE_E3.Tab_Table_e3 table

    5. **E3.Table**:根据标签信息,E3.Table可能是一个专门用于数据展示和操作的组件库,它可能提供了一些便捷的表格展示和操作功能,与Struts2的视图层进行配合,使得用户界面更加友好。 在实践中,你可以通过解压**...

    E3.Resource参考手册

    E3.Resource参考手册详细解析 E3.Resource是一个专为E3平台设计的组件,主要用于管理和优化应用程序中的静态资源,如CSS样式表、JavaScript文件和图片等。它旨在提高资源加载效率,提供统一的管理和访问机制,同时...

    DevExpress.Registration.Setup.v12.1.5.E3.msi

    DevExpress.Registration.Setup.v12.1.5的注册补丁,直接安装即可,测试VS2008,VS2010可用。

    E3 tree 1.6在Firefox下显示问题的修复方法

    查看e3 tree的源代码: /E3Tree/src/net/jcreate/e3/tree/ext/ExtTreeBuilder.java /E3Tree/src/net/jcreate/e3/tree/ext/OutlookExtTreeBuilder.java 找到相关代码: 代码如下: resouces.append(“&lt;sc

    e3tree 树控件的使用

    在C/S环境中,E3Tree通常与Java后端配合使用。你可以通过Java API来构建和管理树结构,然后通过网络通信将数据传输到前端展示。在Java端,你可以使用`E3TreeNode`类来表示树节点,并使用`E3Tree`类的方法来操作这些...

    e3.war项目加我

    e3.war项目加我e3.war项目加我

Global site tag (gtag.js) - Google Analytics