实时转换JAVA应用程序的可视化外观的设备和方法技术

技术编号:2851042 阅读:286 留言:0更新日期:2012-04-11 18:40
一种用于实时转换程序的可视化外观的方法和设备,更具体地说,涉及一种用于通过将新的接口添加到定义程序的可视化外观的应用程序接口(API)而允许基于接口的程序实时转换组件的颜色组合、字体、图标和组件的文本的位置、以及组件的外部外观来实时转换程序的可视化外观的方法和设备。

【技术实现步骤摘要】

与本专利技术一致的方法和设备涉及实时转换Java应用程序的可视化外观,更具体地说,涉及一种允许基于接口的Java应用程序通过将定义Java应用程序的可视化外观的新的接口添加到Java应用程序接口(API)来实时地转换组件的颜色组合、字体、图标、文本位置、以及外部外观的方法和设备。
技术介绍
Java是作为跨平台的面向对象的编程语言。这里,平台指的是程序在其中被执行的硬件环境或诸如操作系统的软件环境。Java代码通过Java编译器被编译为Java字节码(byte code),Java字节码由Java虚拟机(其已经被集成到各种平台)来执行。图1示出Java应用程序可在其中运行的传统系统。该系统包括Java应用程序11、Java应用程序接口(API)12、Java虚拟机13、以及基于硬件的平台14。Java应用程序11指的是以Java语言写成的程序,其通过使用Java编译器被编译为Java字节码,Java字节码由Java虚拟机解释,其后被执行。此时,Java虚拟机13作为关于Java字节码的解释器运行。Java API 12为用于开发Java程序的集合的库或类;它们以在其中相互关联的类被捆绑的打包的单元而被提供。Java应用程序11使用Java API 12以提供图形用户界面(下面称之为“GUI”),其中,Java API 12通过使用平台14的GUI来将图形输出到屏幕上。用于提供GUI的Java API 12根据绘图模式(drawing mode)而被分类为重型(heavy-weight)API和轻型(light-weight)API。因为重型API按由基于平台的GUI提供的格式来写成GUI,所以其是依赖平台的。由于轻型API按开发者所期望的格式来写成GUI并将其发送到基于平台的GUI,所以其在其它平台上按相同的格式提供GUI。这里,Java抽象窗口工具包是重型API,而Java Swing是轻型API。图2示出通过传统Java抽象窗口工具包绘制组件的类的结构。标签(Label)组件22是抽象窗口工具包的组件类21的扩展,其连接到LabelPeer类23以连接基于平台的GUI 24。LablePeer类23起到连接基于平台的GUI 24和Label组件22的作用。由于这样的构造,抽象窗口工具包提供依赖于平台的GUI。图3示出通过传统的Java Swing绘制组件的类的结构。Swing的标签组件是JLabel,JLabel组件33是JComponet类32的扩展。JComponent类32最终继承组件类31。JLabel组件33具有被称为Label UI的对象34,其绘制JLabel组件33,并且其不与基于平台的GUI连接。绘制组件的部分完全以Java实现,它们通过Java虚拟机35而被输出到屏幕上。因此,无论平台如何,Swing组件都被输出到具有相同外观的屏幕上。可视化外观(visual appearance)是输出到屏幕上的组件的可视化属性;它表示组件的颜色组合、字体和图标,以及文本的位置和外部外观。如上所述,组件的外部外观根据平台而改变,并且由于抽象窗口工具包是依赖于平台的,所以无法进行实时转换。然而,在Swing中,因为Swing是跨平台的,所以组件的外部外观不根据平台而改变。然而,将Swing应用于基于抽象窗口工具包而写成的程序会产生问题。由于轻型API的结构限制,组件的可视化外观仅可应用于应用程序单元,而不能应用于在平台上运行的所有应用程序。
技术实现思路
本专利技术的一方面允许基于接口的Java应用程序通过将具有Java应用程序的定义的外观的接口添加到Java API来实时地改变外观。通过浏览以下描述,本专利技术的此方面和其它方面、特点和优点将对本领域技术人员变得清楚。根据本专利技术的一方面,提供一种用于实时地转换Java应用程序的可视化外观的设备,该设备包括命令接收单元,用于接收转换基于抽象窗口工具包产生的当前运行的Java应用程序的可视化外观的命令;接口管理单元,用于根据接收的命令来参照存储的可视化外观包,并通过通知Java应用程序的组件进行可视化外观转换来转换可视化外观;以及显示单元,用于将转换的可视化外观被应用到其的Java应用程序输出到屏幕上。一种用于实时地转换Java应用程序的可视化外观的方法,该方法包括接收转换基于抽象窗口工具包产生的当前运行的Java应用程序的可视化外观的命令;根据接收的命令参照存储的可视化外观包,并通过通知Java应用程序的组件进行可视化外观转换来转换可视化外观;以及将转换的可视化外观被应用到其的Java应用程序输出到屏幕上。附图说明通过下面结合附图对示例性实施例进行的描述,本专利技术的上述和其他方面、特点和优点将会变得清楚,其中图1示出传统的Java应用程序可在其中运行的系统;图2示出通过传统的Java抽象窗口工具包绘制组件的类的结构;图3示出使用传统的Java Swing绘制组件的类的结构;图4是示出根据本专利技术示例性实施例的用于在运行时间期间转换Java应用程序的可视化外观的设备的框图;图5是示出根据本专利技术示例性实施例的接口管理单元的框图;图6是示出根据本专利技术示例性实施例的Java应用程序的组件的皮肤(skin)被转换的过程的流程图;以及图7是示出根据本专利技术示例性实施例的Java应用程序的组件的主题被转换的过程的流程图。具体实施例方式参照示例性实施例的详细描述及附图,本专利技术的优点和特点以及实现本专利技术的方法将更容易理解。然而,本专利技术可按多种不同形式来实现,而不应理解为受限于在此阐释的实施例。此外,提供这些实施例以便该公开是彻底和完全的,并将全面地将本专利技术的构思传达给本领域技术人员,本专利技术仅由所附权利要求来定义。将参照附图来详细描述本专利技术的示例性实施例。图4是示出根据本专利技术示例性实施例的用于在运行时间转换Java应用程序的可视化外观的设备的框图。虽然与抽象窗口工具包相比,Swing提供了更强健的图形功能,但由于Swing库必须存储在设备中,所以诸如电子家用电器这样的具有有限的存储器的装置主要具有基于抽象窗口工具包写成的图形用户接口。根据本专利技术示例性实施例的设备指的是在其中使用抽象窗口工具包写成Java应用程序的图形用户界面的设备。然而,本领域普通技术人员将意识到,本专利技术不限于使用抽象窗口工具包来写成Java应用程序。根据本专利技术实施例的设备包括接口管理单元410、命令接收单元420、控制单元430、以及显示单元440。命令接收单元420接收转换当前运行的基于抽象窗口工具包的Java应用程序的可视化外观的命令。可视化外观是诸如组件的颜色组合、字体和图标、文本的位置和外部外观的Java应用程序的可视化属性;例如窗口和按钮。由用户输入的可视化外观转换命令被发送到控制单元430,控制单元430通过根据接收的命令参照存储的可视化外观包来指示接口管理单元410通知包括在Java应用程序中的组件进行可视化外观转换,其后执行可视化外观转换。存储的可视化外观包指的是与主题和皮肤相关的类的捆绑,其包括使组件的外部外观具体化的皮肤包,以及通过读出与组件的颜色组合、字体和图标以及文本的位置相关的属性信息来形成主题的主题包。运行中的Java应用程序将存储的可视化外观包应用到它的可视化外观,其后本文档来自技高网
...

【技术保护点】
一种用于实时转换程序的可视化外观的设备,包括:    命令接收单元,用于接收转换当前运行的程序的可视化外观的命令;    接口管理单元,用于根据接收的命令参照存储的可视化外观包,并通过通知程序的组件进行可视化外观转换来转换可视化外观;以及    显示单元,用于将转换的可视化外观被应用到其的程序输出到屏幕上。

【技术特征摘要】
KR 2005-1-25 10-2005-00068001.一种用于实时转换程序的可视化外观的设备,包括命令接收单元,用于接收转换当前运行的程序的可视化外观的命令;接口管理单元,用于根据接收的命令参照存储的可视化外观包,并通过通知程序的组件进行可视化外观转换来转换可视化外观;以及显示单元,用于将转换的可视化外观被应用到其的程序输出到屏幕上。2.如权利要求1所述的设备,其中,可视化外观包括包括在程序中的组件的颜色组合、字体和图标,以及组件的文本的位置和外部外观的属性。3.如权利要求1所述的设备,其中,可视化外观包至少包括以下之一主题属性信息,其具有包括在程序中的组件的颜色组合、字体和图标、以及组件的文本的位置的定义的属性;以及皮肤包,用于参照包括在程序中的组件的外部外观的属性。4.如权利要求1所述的设备,其中,接口管理单元包括主题管理单元,用于至少管理组件的颜色组合、字体和图标、以及包括在程序中的组件的文本的位置和外部外观的属性之一;皮肤管理单元,用于管理包括在程序中的组件的外部外观的属性;以及接口控制单元,用于通过对皮肤管理单元和主题控制单元进行一般控制来管理组件的可视化外观转换。5.如权利要求4所述的设备,其中,组件至少是继承了组件类的控制组件和容器组件之一。6.如权利要求4所述的设备,其中,当根据接收的命令的皮肤没有在存储器中注册时,皮肤管理单元创建新的皮肤,并在存储器中注册所述新的皮肤。7.如权利要求4所述的设备,其中,接口控制单元选择性地将主题管理单元或皮肤管理单元应用于当前运行的程序。8.如权利要求4所述的设备,其中,当多个程序运行时,接口控...

【专利技术属性】
技术研发人员:朴相丁
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:KR[韩国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1