Java组件皮肤定制预览工具的研究与实现.pdf

上传人:wj 文档编号:3436805 上传时间:2023-05-05 格式:PDF 页数:35 大小:518.81KB
下载 相关 举报
Java组件皮肤定制预览工具的研究与实现.pdf_第1页
第1页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第2页
第2页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第3页
第3页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第4页
第4页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第5页
第5页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第6页
第6页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第7页
第7页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第8页
第8页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第9页
第9页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第10页
第10页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第11页
第11页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第12页
第12页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第13页
第13页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第14页
第14页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第15页
第15页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第16页
第16页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第17页
第17页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第18页
第18页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第19页
第19页 / 共35页
Java组件皮肤定制预览工具的研究与实现.pdf_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Java组件皮肤定制预览工具的研究与实现.pdf

《Java组件皮肤定制预览工具的研究与实现.pdf》由会员分享,可在线阅读,更多相关《Java组件皮肤定制预览工具的研究与实现.pdf(35页珍藏版)》请在冰点文库上搜索。

Java组件皮肤定制预览工具的研究与实现.pdf

安徽建筑大学毕业设计(论文)IJavaJava组件皮肤定制预览工具的研究与实现组件皮肤定制预览工具的研究与实现组件属性编辑器功能的实现组件属性编辑器功能的实现摘要摘要Java是一种解释型的,完全面向对象的编程语言,成功地应用在网络及移动计算等应用领域。

Sun公司推出的J2SE50版本引入了SwingSynth,提供了一种新的LookAndFeel“皮肤”外观切换技术,使Java在用户界面(UI)领域迈上一个新台阶。

本人主要负责的是组件属性编辑这一板块,本文主要分析了属性编辑器的功能,并且叙述了如何完成属性编辑器。

通过本文,我们可以知道不同的组件支持的状态不一样,再加上一个具体的组件具有的属性也不一样,要使编辑器实现这样的功能:

即能够在确定设计一个特定的组件时,选择这个组件的其中一种状态,再根据在此种状态下具有的属性中定制此组件的各种属性,并且能够把用户定制的组件状态、属性保存起来,以便用户通过点击浏览按钮来预览刚才设定的组件的属性状态,看是否满意,不满意此组件风格可再设定。

章节结构,第一章主要是课题背景,研究内容及研究意义;还有Java平台的现状和发展趋势。

第二章主要介绍了开发工具Java的特点,环境的搭建以及开发平台的介绍。

这两章主要是为了让读者更好的了解本课题,以及Java的发展历史,现状以及主要优势。

第三章就是具体介绍了属性编辑器的功能需求分析和设计类图。

这样更好的让读者了解属性编辑器的工作原理。

第四章则是具体组件属性编辑器的具体实施。

图7参13关键词:

JavaSynth;组件皮肤定制;属性编辑器安徽建筑大学毕业设计(论文)IIAbstractAbstractJavaisaninterpretiveandtotallyobject-orientedlanguage.Ithasbeensuccessfullyappliedinmanyfields,suchasnetworkandmobilecomputing.FromJ2SE5.0publishedbySunMicrosystems,Inc,anewSwingpackagecalledSynthhasofferedanewLook-and-Feel(L&F)”skin”appearance,makingJavamuchimprovedinfieldofUI(Userinterface)Imainlyresponsibleforthecomponentpropertieseditorinthisplate,thispapermainlyanalyzesthepropertyeditorfunction,anddescribeshowtocompletethepropertyeditor.Throughthisarticle,wecanknowthestatusofthedifferentcomponentsthatsupportdifferent,coupledwithaspecificcomponenthasattributesisdifferentalso,tomaketheeditortorealizethisfunction:

isabletodeterminethedesignforaparticularcomponent,selectthecomponentsofastate,accordingtothecustominsuchaconditionhasthepropertiesofthevariousattributesofthiscomponent,andcanbecustomcomponentstate,theattributesarepreserved,sothatusersbyclickingonthebrowsebuttontopreviewthesetbythestate,thecomponentattributesjustnowtoseeifsatisfied,notsatisfiedwiththestyleofthiscomponenttoset.Chapterstructure,thefirstchapterismainlysubjectbackground,researchcontentsandresearchsignificance;AndthestatusquoanddevelopmenttrendoftheJavaplatform.ThesecondchaptermainlyintroducesthefeaturesoftheJavadevelopmenttoolsandenvironmentconstructionaswellasthedevelopmentplatformisintroduced.Thischaptertwoistogivereadersabetterunderstandingofthetopic,andJavadevelopmenthistory,currentsituationandmainadvantages.Thethirdchapterisdetailedintroducedthepropertyeditorfunctiondemandanalysisanddesignclassdiagram.Sobetterletthereaderunderstandthepropertyeditorworks.Thefourthchapteristheconcreteimplementationofspecificcomponentpropertieseditor.Figure9referenee13Keywords:

JavaSynth;Customcomponentsskin;PropertyEditor目录目录摘要.IAbstract.II1绪论.21.1课题背景.21.2课题研究内容及研究意义.31.3研究Java平台现状和发展趋势.32系统开发环境及相关技术.42.1Java语言的特点.42.2拟采用的研究方法,技术路线,实验方案的可行性分析.52.3Java开发环境介绍:

.62.4Java开发平台搭建.72.5UML技术的介绍.82.5.1UML技术.82.5.2UML的发展和特点.82.5.3为什么使用UML.93组件属性编辑器功能设计.103.1组件属性编辑器功能分析.103.2组件属性编辑器设计模型.124组件属性编辑器的详细设计与实现.164.1组件属性编辑器的实现代码.164.2组件属性编辑器的完成与应用.265总结与展望.295.1总结.295.2系统展望.29参考文献.31致谢.33安徽建筑大学毕业设计(论文)211绪论绪论1.1课题背景软件皮肤,就是软件的界面,是软件的可视外观。

就如手机、车的外壳、人的衣服一样,可以说,软件皮肤就等于软件的衣服。

如今,为了软件的市场占有率,并且让用户有更好的使用体验,越来越多的厂商往自己的软件里加入了皮肤(skin)或主题(theme)的功能。

最典型的就是我们常用的“WindowsXP、WindowsVista、搜狗输入法、Firefox(火狐)、Maxthon(傲游)、千千静听、世界之窗、QQ、Winamp、Wmp、MediePlayer、Kmplayer”等常用软件。

同时越来越多的人注重个性,因此网络上就出现了大量的各类皮肤。

Java是由SunMicrosystems公司于1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。

2004年9月30日18:

00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。

为了表示该版本的重要性,J2SE1.5更名为JavaSE5.0。

J2SE(TM)50引进Synth外观对于抢夺在用户界面领地是势在必得。

Swing在这次Java的变更中扮演着一个非常重要的角色,它的变更不是停留在更改几个API,而是在实现的理念里添加了新的实现元素,这必然会对Java的UI构架设计产生影响。

Swing是Java在桌面系统中最主要的应用技术,从其出现伊始就广受入们的关注,并且Sun公司也一直将它作为Java在桌面系统的主流技术进行推广。

在J2SE(TM)50中Swing提供了另外两种外观唧:

Synth一可切换皮肤的外观和Occean针对Metal的新主题。

采用Synth设置外观,是通过载入不同的XML文件达到对相应界面的控制。

其实现步骤包括将程序外观设置成Synth模式以及编辑相对应的XML文件。

J2SE50还为各种集合提供了并发情况下的实现,J2SE50为JavatailProperties类加入了从XML文件中装载属性和把属性值存储到XML文件中的方法。

但是,无论是loadFromXml还是storeToXml方法它们都要求指定输入流和输出流的XML文档具有DOCTYPE的声名格式。

用XML文件来控制程序外观可减少繁冗的代码编写。

安徽建筑大学毕业设计(论文)31.21.2课题研究内容及研究意义课题研究内容及研究意义用户对图形界面质量的要求呼声越来越高,从而使软件工程师在界面风格上花费的精力越来越多。

这样使系统的开发周期越来越长,导致系统开发成本越来越高。

于是SUN公司在J2SE50中推出了Synth外观,它是为Swing引入的最新内容,它是通过载入不同的XML文件达到对相应界面的控制。

然而,开发人员利用Synth进行外观设计时,需要在XML文件中描述数量繁多的组件属性和遵循SynthDTD格式,实现相应界面的控制,而且可定义的特定于组件的属性就有100多种,这对程序员来说比较繁琐。

同时由于XML和Java技术具有易用性与跨平台性,且XML具有描述和存储数据性,面对整个Intenet的用户,按照UML过程研究并实现基于JavaSynth的可视化组件风格定制系统是一个很好的解决方案。

Java程序员可把定制的组件风格直接应用到Java文件中,不需要修改任何Java源代码,就可使Java程序的界面面貌焕然一新。

更重要的是这样不仅大大节省了Java程序员编写一个应用程序完整的界面外观的工作量、时间,并且降低了软件的开发成本。

即使不懂Java程序设计的图形界面设计师也可参与工程的设计,使程序设计人员和图形设计师达到完美的结合,从而提高了软件的开发效率,推进了软件行业的发展。

1.31.3研究研究JavaJava平台现状和发展趋势平台现状和发展趋势Java是由SunMicrosystems公司于1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。

由JamesGosling和同事们共同研发,并在1995年正式推出。

用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:

跨平台、动态的Web、Internet计算。

从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。

另一方面,Java技术也不断更新。

(2010年Oracle公司收购了SUN)Java由四方面组成:

Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(JavaAPI)。

平台安徽建筑大学毕业设计(论文)4Java平台由Java虚拟机(JavaVirtualMachine,简称JVM)和Java应用编程接口(ApplicationProgrammingInterface,简称API)构成。

Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。

在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。

Java平台已经嵌入了几乎所有的操作系统。

这样Java程序可以只编译一次,就可以在各种系统中运行。

Java应用编程接口已经从1.1x版发展到1.2版。

常用的Java平台基于Java1.4,最近版本为Java1.7。

Java分为三个体系J2SE(Java2PlatformStandardEdition,java平台标准版),J2EE(Java2Platform,EnterpriseEdition,java平台企业版),J2ME(Java2PlatformMicroEdition,java平台微型版)。

现状自从Sun被甲骨文收购以后,詹姆斯高斯林在其早期的博客中,也透露了不会放弃Java事业,只是需要解决一些与Oracle之间的法律问题。

这一切迹象表明,Oracle绝对不会轻易放弃Java这块巨大的蛋糕,并且Oracle也开始逐渐学会了对开源社区的尊重。

首先在JDK的商业版本方面,Oracle将会继续深入掘Java的商业利益,与其固有产品进行更深入的整合。

在社区版本方面,Oracle将与Java开发者一起探讨和研发Java的技术。

这里需要特别提到的一个产品是OracleBerkeleyDB,该产品是Oracle一直支持的一个开源非关系数据库产品,在NoSQL大行其道的今天,如果Oracle能够将BerkeleyDB与Java进行深入整合,将会为Java带来更多的活力和生命。

从詹姆斯高斯林的表现来看,他似乎与Oracle之间已经达成某种谅解,并且有进一步合作的可能性。

22系统开发环境及相关技术系统开发环境及相关技术2.1Java2.1Java语言的特点语言的特点Java编程语言的风格十分接近C、C+语言。

Java是一个纯粹的面向对象的程序设计语言,它继承了C+语言面向对象技术的核心。

Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator安徽建筑大学毕业设计(论文)5overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。

在Java1.5版本中,Java又引入了泛型编程(GenericProgramming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。

Java不同于一般的编译执行计算机语言和解释执行计算机语言。

它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。

从而实现了“一次编译、到处执行”的跨平台特性。

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了Java程序的运行效率。

编辑Java源代码可以使用任何无格式的文本编辑器,在Windows操作系统上可以使用记事本(Notepad)、EditPlus等程序,在Linux平台上可使用VI工具等。

Java优势,是适合团队开发,软件工程可以相对做到规范,这是一个很难比拟的优势。

Java劣势,是J2EE的架构很完美,第一版软件可以做满意,但是很不适合互联网模式的持续不断修改。

互联网软件工程管理上的不足,持续的修修补补导致架构的破坏。

2.22.2拟采用的研究方法,技术路线,实验方案的可行性分析拟采用的研究方法,技术路线,实验方案的可行性分析1.采用的研究方法:

文献研究法、功能分析法、UML建模法、面向对象的分析方法。

2.技术路线:

设计的总体组件框架要用到UML建模来创建一个用例图,经过多次修改,然后是利用java的各个数据包来完成组建属性编辑器功能的实现。

我们知道对于一个具体的组件就支持多种不同的状态,而且不同的组件支持的状态不一样,再加上一个具体的组件具有的属性也不一样,要使编辑器实现这样的功能:

即能够在确定设计一个特定的组件时,选择这个组件的其中一安徽建筑大学毕业设计(论文)6种状态,再根据在此种状态下具有的属性中定制此组件的各种属性,并且能够把用户定制的组件状态、属性保存起来,以便用户通过点击浏览按钮来预览刚才设定的组件的属性状态,看是否满意,不满意此组件风格可再设定这就要求属性编辑器具有调用其它功能模块的接口。

有组件的状态最多有十一种,它们分别是ENABLED、MOUSE_OVERPRESSED、MOUSE_OVWERSELECTED、MOUSEOVERFOCUSED,PRESSED,SELECTED,FOUSED,DISABLEDPRESSED,DISABLEDSELECTED,在本系统中实现了用户定制组件的一种状态时属性编辑器要有一次刷新的功能。

3.实验方案的可行性分析:

(1)软件环境:

Netbeans,jdk1.6.0

(2)硬件环境:

a.处理器:

酷睿i5480Mb.内存:

2Gc.显卡:

NVIDIAGEFORCE1G(3)我们基本掌握Java程序的开发与简单运用,并在老师的解说教导下简单掌握了UML建模技术。

UML在Java开发的整个过程中,不仅保重了代码的质量而且减小了系统的开发风险。

在构建复杂系统时,UML支持工程化、体系结构级别的设计和细节设计,对Java体系加入了一致性设计,将Java开发转向真正可视化的工程模式中。

再加上UML可用于任何软件的开发过程,与具体的过程无关和与具体的实现也无关,可用于任何语言平台和工具平台,有利于面向对象工具的市场成长。

2.2.33JavaJava开发环境介绍开发环境介绍:

1.打开我的电脑-属性-高级-环境变量2.新建系统变量JAVA_HOME和CLASSPATH变量名:

JAVA_HOME变量值:

C:

ProgramFilesJavajdk1.7.0变量名:

CLASSPATH安徽建筑大学毕业设计(论文)7变量值:

.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar;3.选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。

变量名:

Path变量值:

%JAVA_HOME%bin;%JAVA_HOME%jrebin;这是java的环境配置,配置完成后直接启动NetBeans,它会自动完成java环境的配置2.42.4JavaJava开发平台搭建开发平台搭建NetBeans是一个始于1997年的Xelfi计划,本身是捷克布拉格查理大学CharlesUniversity的数学及物理学院的学生计划。

此计划延伸而成立了一家公司进而发展这个商用版本的NetBeansIDE,直到1999年SunMicrosystems电脑买下此公司。

SunMicrosystems于2000年6月将NetBeansIDE作为开源项目发展。

2010年1月,SunMicrosystems成为甲骨文的子公司。

目前NetBeansIDE最新版下载量已经超过18万次,参与开发人员超过80万。

NetBeans项目正在蓬勃发展,并将继续成长。

NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java、C/C+,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。

在NetBeansPlatform平台中,应用软体是用一系列的软体模组(ModularSoftwareComponents)建构出来。

而这些模组是一个jar档(JavaArchiveFile)它包含了一组Java程式的类别而它们实作全依据依NetBeans定义了的公开介面以及一系列用来区分不同模组的定义描述档(ManifestFile)。

有赖於模组化带来的好处,用模组来建构的应用程式可只要加上新的模组就能进一步扩充。

由於模组可以独立地进行开发,所以由NetBeans平台开发出来的应用程式就能利用着第三方软件,非常容易及有效率地进行扩充。

安徽建筑大学毕业设计(论文)8NetBeans平台是一种可重复使用的框架用于简化其他桌面应用程式的开发。

当基于NetBeans平台的应用被执行,平台主要类别的main方法便会被执行。

可用的模组会被放置在存储器中,并且开始执行任务。

通常模组会只在被需要时,其代码才会被装进记忆。

应用程式能动态安装模组。

任何应用程式能包括更新模组,允许用户申请下载的应用程式升级和加入新功能。

这样安装,升级以及新发并行不必迫使用户每次再下载整个应用程式。

整个Netbeans平台提供对桌面应用程式常用的服务,允许开发者集中于仅限于他的应用程式的逻辑设计。

其中NetBeans平台的主要特征是:

1.用户界面管理Userinterfacemanagement(例如选单和工具条);2.用户设定管理Usersettingsmanagement;3.存储管理Storagemanagement(保留和装任何种类数据);4.视窗管理Windowmanagement;5.引导框架Wizardframework(一步一步支援对话框)。

2.52.5UMLUML技术的介绍技术的介绍2.52.5.1.1UMLUML技术技术UML是UnifiedModelingLanguage(统一建模语言)的简称。

UML是一种通用的可视化的标准建模语言,它的出现是面向对象技术发展的重要成果。

UML现已成为软件设计和建模的代名词,它用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。

UML的主要作用是用一种单一的完整形式来表达从结构到行为的整个范围的设计制品,支持从需求分析开始的软件开发的全过程。

UML建模方法可归结为静态建模机制和动态建模机制两大类。

其中,动态建模描述的是系统的行为,建立的模型可执行也可表示系统执行时的时序状态或交互状态,包括状态图、顺序图、活动图、协作图等;而静态建模主要构造的是系统的结构,包括系统的用例图、类图及构件图和部署图等等。

2.52.5.2.2UMLUML的发展和特点的发展和特点安徽建筑大学毕业设计(论文)9UML是由世界著名的三个称为好朋友的面向对象专家GradyBooch、Jamesgumbaugh和IvarJacobson在1995年创立的。

这三位技术专家是在各自分别建立的Booch方法、OMT方法和OOSE方法的基础上,并吸取了其它面向对象方法的优点,广泛征求意见,几经修改而完成的。

UML为软件开发师、架构师和分析师提供了一个更加方便的工具。

后来他们三人加盟到(RationalSoftwareCorporation)Rational公司,到1997年,Rational将UML语言(11版)的权利授给OMG(ObjectManagementGroup)对象管理组组织,以使UML成为公共标准,因为OMG是一个独立的非盈利组织,其目标是开发、维护和适应软件行业的标准和规范。

OMG的董事会包括IBM、Oracle和SunMicrosystems等公司。

这样,XML在OMG协会的指导下得到了进一步的发展,并在1999年6月发布了UML13版,2001年9月发布了UMLI4版本,2003年3月发布了UMLl5版本,2004年发布了20版本嘲。

利用UML的主要目

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2