现在开始我们来慢慢完善这个系统,今天做一个登录界面,此套系统已经开始慢慢加入Java各种框架,或者后期我会自己定义合适的框架,让它可以完整的跑下来。今天做的是用window包裹panel,panel再包裹tabpanel实现的:先来看看今天做的效果图:login.jsp<%@ page language="java" contentType="text/html
接着上次的章节,以下是比较完整的项目,我把整套框架搭好,还实现了一些动态控件,如:TreePanel+accordion、Grid高级功能等,具体见下图展示,希望可以帮助你在项目中用到。(图一) 整体效果(图二)动态菜单(图三)高级Grid展示与操作(图四)TreeGrid以上是最近做的全部功能,后续继续完善更复杂功能,【点我下载全部源码】具体的不细说,源码里我都加了注释了,你们自己对照着做吧,访
本节采用技术:SpringMVC+Jetty+ExtJs4.2+Maven+MySQL5.1以上+SLF4J(前几节学习的大家不知道记住了没,现在来总结复习下,顺便加点新技术)学习本节前的准备:Eclipse高版本,Jetty插件,Maven插件,JDK1.7休息了好久没开动教程了,确实最近太累了,大家见谅!先来看下效果,本章节是连续篇,今天是续篇的第一讲,前面都是静态讲解,大家是不是觉得不过瘾
不知道大家发觉这样的问题没,以前写Extjs3.X的时候,Eclipse在复制粘贴写代码的时候一点不卡,在4.2的时候,用eclipse写就会经常卡死的现象。下午研究了一下午,我可不想在写代码的时候一直被卡死,我就找到了新的IDE工具intellij idea (关于此工具的介绍可以看我这篇文章http://www.shuyangyang.com.cn/jishuliangongfang/Java
在ExtJs4.2表单控件里有个时间控件,但是官方提供的控件不能将日期和时分秒整合到一起,我从网上搜集整理了几个可用的控件。先来看下4.2自带的是什么效果:上面的控件一点都不方便,而且选择的时候还不能精确到秒,以下是代码:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%&
Ext.form.Field是所有表单输入控件的基类,其他的输入控件都是基于Ext.form.Field扩展得来的。 Ext.form.Field中定义了输入控件通用的属性和功能函数,这些通用的属性和功能函数大致分为3大类:页面显示样式、控件参数配置和数据有效性检验。我们先来看看表单输入控件可以使用的校验显示方式。默认情况下,这些输入控件会监听blur事件,如果数据校验失败,就会根据msgTarg
本节开始我们正式讲EXT的第2大类组件--表单控件,有了之前几节的经验,现在应该学起来得心应手,这里先介绍下Extjs4.2里的样式,以便于美化界面,今天无意中还搜到了几篇自己制作样式的文章,相当给力,对于我来说是个好消息,我会在后面的学习中逐渐学习。css文件夹里有总体对应的下面theme样式,access是黑色样式classic为默认蓝色经典样式ext-theme-classic-sandbo
本节为ExtJS表格学习的最后一节,学完我将学习表单与输入控件的内容。树形表格(TreeGrid)同时具备树形的分级结构和表格的丰富内容。先引入扩展组件,老规矩://引入扩展组件 Ext.Loader.setConfig({enabled: true}); Ext.Loader.setPath('Ext.ux', '../ExtJS4.2/ux/')
我曾经在第6节里讲到表格分页,还记得之前的分页组件是什么样的吗?上面只有文字显示,我们来为其制作的更美观点,好吧,不卖关子了,讲本节的内容:进度条分页控件,这是表格扩展组件。首先我们需要引入扩展组件才可以使用://引入扩展组件 Ext.Loader.setConfig({enabled: true});
前一章说了EditorGrid可编辑表格,但是有点不方便,如果数据多的话,一次性保存未免有点不太方便。下面我们来说一个扩展插件rowEditing网上许多说了不全,比如将修改的内容提交到后台的方法首先,创建扩展插件方法var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', { saveBtnText: '保存',
在实际的软件开发中,我们的grid表格为了方便用户通常会有一个右键菜单来实现对表格的增、删、改等操作,其实只需要2步就可轻松实现第一、创建一个Ext.menu.Menu//表格右键菜单 var contextmenu = new Ext.menu.Menu({ id:'theContextMenu', items:[{ tex
单纯的数据展示是不是太单调了?来,这次咱来个互动性强的,表格的行、列可随意拖放,不仅如此,还可以多个表格之间随意拖动。先来看下第一个例子,通过拖放改变表格大小:主要代码,其实之前的代码并不需要改变多少,只需要加入以下代码即可:var columns = [ {header:'编号',dataIndex:'id'}, {header:'名称',dataIndex:'nam
分组表格控件在我们的开发中经常被用到,GroupingGrid分组表格就是在普通表格的基础上,根据某一列的数据显示表格中的数据分组的表格控件。举个例子给大家,比如某些信息用树形显示觉得有点大才小用,树形可以有无限极,但是用了分组表格可以完美的展示信息,看下图是我的项目中用到的一个例子,将所有评分项显示出来,并且动态获取是否有次数,如果有次数将出现可编辑,没有次数就不可编辑,如果需要扣分就出现链接,
PropertyGrid是在上节我们说的Editor的基础上开发的更灵活的高级表格组件,下面我们来看下它的功能和应用方式:属性表格扩展自EditGrid,所以可以直接编辑右边的内容。注意,只有右边的,即使你单击左边的单元格,编辑器也只会出现在右边。实际上,我们可以用散列表来形容PropertyGrid,左边可以看做key,右边的是value。key是由我们指定好的,用户只需要修改对应的value即
如何软件和系统都会对输入的数据类型进行限制。Ext提供了多种数据类型的组件,比如NumberField限制只能输入数字,ComboBox限制只能输入备选项,DateField限制只能选择日期,CheckBox则限制从true和false中选择其一,等等。效果:选择列:日期列:判断列:现在我们来修改之前的数据,让数据类型变得更丰富,如下面的代码:Ext.onReady(function(){
上节讲到通过后台数据进行分页,分页工具条还可以放置在顶端,或者上下都有而不影响数据,因为它们都共用一个store//创建表格 var grid = new Ext.grid.GridPanel({ renderTo:'grid', //渲染位置 autoHeight:true, store:store, width:550,
大家想想,上节中我们做的表格,如果有成千上万条的数据显示在表格里,然后滚动条查看数据,显然不是什么好办法,而且效率上也不允许。实际上,表格控件对性能的要求较高。在一个页面上放3个表格,就可以感觉到响应变慢。在表格里显示成千上万条数据,效率就可想而知了。所以说分页是必不可少的,接下来我们就来看EXT提供的分页工具条。//创建表格 var grid = new Ext.grid.GridPa
前几章做的例子,你有没有发现太单调啦?呵呵,相信聪明的你一定知道,光显示文字,那这功能太弱爆了吧,现在我们来看下ExtJs给我们带来的表格渲染和复选框等功能。有的人问我了,为什么你们的默认表格样式和我做的效果图不一样呢,呵呵,那是因为我引入了ExtJS4.2的其他样式,并非默认的样式,换样式很简单,只需要更改Link引入的文件就可以很轻松的换各种样式,哇~是不是很给力啊,你敢信?好了,不扯远了,下
我们在表格中指定某列排序的时候,我发现排序的时候,中文并没有很好的按照规律排序,国际上都使用ASCII码进行排序,而我们却拼音排序,Ext自动排好的中文在我们看起来是一团糟。如下代码数据:var data =[ ['1','啊','描述01'], ['2','波','描述02'], ['3','呲','描述03'], ['4'
Ext中的表格功能非常强大,包括排序、缓存、拖动、隐藏某一列、自动显示行号、列汇总、单元格编辑等实用功能。表格由类Ext.grid.GridPanel定义,继承自Ext.Panel,其xtype为grid。在EXT中,表格控件必须包含列定义信息,并指定表格的数据存储器。表格数据最起码有列、数据、转换原始数据这3项。列信息由数组columns定义,表格的数据存储器由Ext.data.Store来定义
学而不思则罔,思而不学则殆。虽然Ext组件拥有几乎完美的对象继承模型,但是这毕竟属于底层架构的一部分,我们日常开发时候接触最多的还是各种组件与布局,通过组件、布局的各种组合最终才形成了功能强劲的应用,所以有必要首先对Ext的组件模型有所了解。Ext中所有的可视组件都继承自Ext.component,这种单根继承的模型保证所有组件都拥有相同的通用方法与生命周期,这样在后续对这些组件进行维护管理时将更
晚上看书的感悟:学习转化为能力的过程:学习-复习-体会-实践-理解-能力。不要以为自己够聪明,其实学习只能记住20%,复习记住30%,体会得到40%,实践得出50%,理解得到60%,理解了70%后转换为能力的才有80%。智慧才是力量,因为智慧对行动的影响更大。将知识变成智慧地过程常常是一个痛苦的过程。好了,言归正传,我们开始学习ExtJS4.2需要的JS包可以从官网下载,这里不多说。这里为什么先说
程序开发需要耐心、细心和创新想象力,我们想高效率的学习,怎么样学才有效果呢? 持续循环的良好模式是什么? 好奇,学习,成就感,让我们的整个学习都待在兴趣循环内。上图很好的反应了学习的过程,不仅程序设计是这样,我们人生中的许多事情都可以运用此循环。 健康的学习思维模式是什么? 首先心态决定一切,学习中切忌心浮气躁,我们不仅需要方法,还需要充裕的时间、饱满的精神状态、不受干扰的
本文原文出自我的个人网站【思考者日记】原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。 上篇说到tomcat jndi(连接池)的使用方法,这次的项目里还使用到了一个日志开关配置,主要是方便客户查看。 我们平时的日志一般使用最多的就是java.util.logger和log4j了。 这里因为要在外部灵活配置,所以我们采用log4
最近有项目用到JNDI,为了方便的更改数据库和环境,好吧,那我就来学习下,顺便分享下方法,网上的方法乱七八糟,看的我眼都晕了。以下我提供的方法绝对是我本人试过可用的,要不发上来被你看到了,估计会被你骂。囧…… 先让大家看下我的项目图: 一、我们先找到tomcat6.0conf目录下的context.xml更改里面的内容:
最近好忙好忙,整理下心情给大家分享下自己在工作中遇到的一点小技巧,希望给遇到同样麻烦的同学一点帮助。 我们知道Java项目打war包可以在Eclipse和MyEclipse工具中自动打包,就是右键,然后导出war包就可以了,可是我发现我的一个项目打war包的过程中遇到点小麻烦,导出的war包打开之后,里面少了很多东西,明显有问题
第一种方法:在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加: <Context path="/hello" docBase="D:\eclipse3.2.2forwebtools\workspace\hello\WebRoot" debug=&q
说一个几个月前遇到的一个面试题,当时没答出来,被刷下来了,后来后悔不已。但是归根结底就是我的Java基础还是欠缺。今天在项目中再次遇到,我们就来回顾一下。 Java中HashMap与HashTable的区别: Hashtable和HashMap类有三个重要的不同之处。 第一个不同主要是历史原因。
在说明作用域四个关键字之前,就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为它们都是自己的子女,而对于和自己同一个目录下的classes,认为都是自己的朋友。 1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用。 2、private:priva
引言
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号