创建系统用户界面的方法及装置制造方法及图纸

技术编号:4058508 阅读:240 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种创建系统用户界面的方法及装置,其中,该方法包括:通过定义xml文件构建系统的UI元模型;获取UI元模型,根据UI元模型调用对应的Windows?UI?API函数创建出系统用户界面。通过本发明专利技术能够提高应用系统的灵活性和可定制性。

【技术实现步骤摘要】

本专利技术涉及一种创建系统用户界面的方法及装置
技术介绍
在带有用户界面UI的应用系统中,UI的信息通常由开发人员通过开发工具定义,例如开发人员通过开发工具提供的集成开发环境IDE定义出系统所要展现的UI的信息,开发工具通过对UI相应的事件编写控制代码以控制UI响应事件的处理逻辑从而实现用户界面UI的功能。代码编写完后再通过开发工具提供的编译连接器对代码进行编译,将UI的信息编译到可执行程序中形成可执行程序,最后用户运行可执行程序,可执行程序解析UI的信息生成系统的用户界面UI。在这个过程中,用户只能被动使用现有的用户界面UI的布局,很难根据自己的应用要求进行修改,而用户需要修改时,他们只能要求该应用系统的开发人员修改代码,生成新的程序以获取符合需求的用户界面UI。这样应用系统必须进行升级,这增加了应用系统开发企业的开发成本和维护成本,同时也延长了对用户的响应时间,减低了用户满意度,难于满足用户对个性化的需求。针对相关技术中普通应用用户或系统维护人员无法根据实际业务需要灵活修改用户界面的问题,目前尚未提出有效的解决方案。
技术实现思路
针对相关技术中普通应用用户或系统维护人员无法根据实际业务需要灵活修改用户界面的问题而提出本专利技术,为此,本专利技术的主要目的在于提供一种创建系统用户界面的方法及装置,以解决上述问题。根据本专利技术的一个方面,创建系统用户界面的方法包括:通过定义xml文件构建系统的用户界面UI元模型;获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面。进一步地,UI元模型包括多个UI元素和该多个UI元素之间的关联关系。进一步地,UI元素包括名称、类型、风格、位置、子UI元素、事件和关联的UI元素。进一步地,通过定义xml文件构建系统的UI元模型包括:读取UI元模型的基本属性生成xml文件;xml文件保存UI元素及其关联关系,以及响应UI元模型的入口函数。进一步地,在解析工具获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面之后,方法还包括:将根据UI元模型创建的系统用户界面保存在本地缓存区。进一步地,解析工具获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面包括:解析工具获取UI元模型中每个UI元素的属性;每个UI元素按照其属性调用相应的Windows UI API函数;获取每个UI元素对应的实际UI,每个实际UI构成系统用户界面。-->进一步地,在解析工具获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面之后,方法还包括:触发系统用户界面中的UI元素;执行系统用户界面中的UI元素对应的预设事件,预设事件包括UI元素自身对应的功能或UI元素关联的UI元素所对应的功能。进一步地,每个UI元素具有唯一的标识并对应xml文件中的一个标签。根据本专利技术的另一方面创建系统用户界面的装置包括:定义模块,用于通过定义xml文件构建系统的UI元模型;创建模块,用于获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面。进一步地,定义模块包括:输入模块,用于输入用户界面UI元模型的基本属性生成xml文件;保存模块,用于xml文件保存UI元素及其关联关系,以及响应UI元模型的入口函数。进一步地,创建模块包括:获取模块,用于获取UI元模型中每个UI元素的属性;调用模块,用于每个UI元素按照其属性调用相应的Windows UI API函数;构建模块,用于获取每个UI元素对应的实际UI,每个实际UI构成系统用户界面。进一步地,装置还包括:触发模块,用于触发系统用户界面中的UI元素;执行模块,用于执行系统用户界面中的UI元素对应的预设事件,预设事件包括UI元素自身对应的功能或UI元素关联的UI元素所对应的功能。通过本专利技术,采用通过定义xml文件构建系统的UI元模型;获取UI元模型,根据UI元模型调用对应的Windows UI API函数创建出系统用户界面,解决了相关技术中普通应用用户或系统维护人员无法根据实际业务需要灵活修改用户界面的问题,进而达到了用户界面开发过程下降到最终用户的层面,提高了应用系统的灵活性和可定制性效果。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例的应用系统用户界面的示意图;图2是根据本专利技术实施例的创建系统用户界面的方法流程图;图3是根据本专利技术实施例的创建系统用户界面的装置示意图。具体实施方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本专利技术。图1是根据本专利技术实施例的应用系统用户界面的示意图。如图1所示,该系统的用户界面UI是由各种UI元素构成的,这些UI元素具有自己风格、位置、显示或隐藏等等,同时UI元素之间也有相互的联动关系,即一个UI元素的某个事件被触发后,它会对其它的UI元素产生什么影响。图1中列出了该系统用户界面UI的描述,这个系统由主窗口1、工具条2、树型窗口3(tree)、列表型窗口4(1ist)和视图5(form)等UI元素构成。在这个描述中,各个UI元素描述如下:-->UI元素(UIItem)包括:Name:名称;Style:类型;Type:风格;Location:位置;ChildUIItems:子UI元素;Events:事件;RelatedUIItems:关联的UI元素。整个系统用户界面UI通过xml文件来记录,每个UI元素对应xml文件中的一个标签(tag),通过UI元素之间的父子关系和相互关联,最终形成整个UI的描述,这个UI的描述也就是UI元模型。本专利技术实施例中采用xml文件描述UI元模型,其中包括两种实施方法,一种是通过手动编辑xml文件的方式实现UI元模型的定义和修改,如通过记事本等xml编辑工具编辑。另外本专利技术系统提供了一套独立的UI元模型定义工具,该工具以所见即所得的方式展示了UI元模型的各个元素,例如采用按照用户的定制需求拖拽控件至定义工具中,定义工具按照预定的模版生成xml文件,本专利技术实施例可以通过该UI元模型定义工具,可以修改和保存UI元素的基本属性如名称、类型、风格位置等,同时也可以设置UI元素的事件响应入口函数,入口函数可以是一个脚本函数,也可以是DLL函数或COM接口。通过UI元模型定义工具可以很灵活地定义及修改应用系统的用户界面UI。整个UI的描述生成之后,解析工具将加载这个UI元模型并创建实际的用户界面UI。该解析工具是一个独立的可执行程序,它加载UI的描述,并在内存中缓冲(其目的是提高解析速度)。例如在多文档视图中,每个子框架窗口都对应于同一个UI元素,而UI元素有自身的唯一标识,因此第一次创建子框架时通过解析工具将UI元素解析成实际的UI,此时该UI就缓冲在内存中,下次再需要创建子框架时首先在内存中查找该UI元素对应的实际UI,如果找到就直接使用,这样就省去了再次解析UI元素及创建UI的过程。UI元素之间有一套UI行为传播的机制,比如点击一个树节点UI本文档来自技高网...
创建系统用户界面的方法及装置

【技术保护点】
一种创建系统用户界面的方法,其特征在于,包括:通过定义xml文件构建系统的用户界面UI元模型;获取所述UI元模型,根据所述UI元模型调用对应的WindowsUIAPI函数创建出系统用户界面。

【技术特征摘要】
1.一种创建系统用户界面的方法,其特征在于,包括:通过定义xml文件构建系统的用户界面UI元模型;获取所述UI元模型,根据所述UI元模型调用对应的Windows UI API函数创建出系统用户界面。2.根据权利要求1所述的方法,其特征在于,所述UI元模型包括多个UI元素和该多个UI元素之间的关联关系。3.根据权利要求2所述的方法,其特征在于,通过定义xml文件构建系统的UI元模型包括:读取所述UI元模型的基本属性生成xml文件;所述xml文件保存所述UI元素及其所述关联关系,以及响应所述UI元模型的入口函数。4.根据权利要求3所述的方法,其特征在于,在解析工具获取所述UI元模型,根据所述UI元模型调用对应的Windows UI API函数创建出系统用户界面之后,所述方法还包括:将根据所述UI元模型创建的所述系统用户界面保存在本地缓存区。5.根据权利要求1-4中任一项所述的方法,其特征在于,解析工具获取所述UI元模型,根据所述UI元模型调用对应的Windows UI API函数创建出系统用户界面包括:解析工具获取所述UI元模型中每个UI元素的属性;每个所述UI元素按照其所述属性调用相应的所述Windows UI API函数;获取每个所述UI元素对应的实际UI,每个所述实际UI构成所述系统用户界面。6.根据权利要求5所述的方法,其特征在于,在解析工具获取所述UI元模型,根据所述UI元模型调用对应的Windows UI API函数创建出系统用户界面之后,所述方法还包括:触发...

【专利技术属性】
技术研发人员:付德平王琳桓永兴
申请(专利权)人:北京数码大方科技有限公司
类型:发明
国别省市:11[中国|北京]

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

1