发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种一种WinCE产品界面主题更新变换处理方法及系统,其采用将界面布局和程序代码分离,解决了客户无法自由定制应用程序界面的问题,同时也提高了应用程序的开发效率。
本发明解决技术问题所采用的技术方案如下:
一种WinCE产品界面主题更新变换处理方法,其中,包括:
A、在WinCE应用程序开发时采用将界面布局和程序代码分离的模型-视图-控制器设计模式,将界面表示层与业务逻辑层进行分离,
B、在界面表示层采用分块的模块化编程,每个模块采用独立的XML可扩展标记语言描述界面主题元素,并设置界面元素加载引擎,将XML可扩展标记语言中的标签元素映射成内存对象,用于自动生成对应模块的用户界面布局;
C、当需修改用户界面时,根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件,根据所述修改控制实现界面元素加载引擎,将修改的xml可扩展标记语言界面配置文件中的标签元素映射成内存对象,自动生成修改后的对应模块的用户界面布局。
所述的WinCE产品界面主题更新变换处理方法,其中,其还包括D:当有新界面修改要求,在原有采用分块的在界面表示层的软件模块上,迭代开发新的模块。
所述的WinCE产品界面主题更新变换处理方法,其中,所述步骤C具体包括:
C10、根据定义的界面元素标签,编写与修改相关的xml界面配置文件,并把编写的配置文件和界面图片放置到指定目录中,形成为界面主题数据文件;
C11、启动更新界面主题数据文件,并向需要更换界面的应用程序发送更新通知;
C12、需要更换界面的应用程序接收更新通知后,将调用基于DOM文件对象模型 API的界面元素加载引擎读取界面主题数据文件的表示层信息;
C13、界面主题数据文件的表示层信息读取成功后,将根据界面主题数据文件中与修改相关配置,自动修改对应的应用程序的图标、背景、布局、字体信息,以在程序运行时循环生产界面元素,动态生成界面。
所述的WinCE产品界面主题更新变换处理方法,其中,所述步骤C具体还包括:
C20、 根据定义的界面元素标签,编写与修改相关的xml可扩展标记语言界面配置文件;
C21、读取与修改相关的xml可扩展标记语言界面配置文件;
C22、读取与修改相关的xml可扩展标记语言界面配置文件中定义的所有界面元素标签;
C23,将读取的所有界面元素标签其映射到内存,生成界面元素对象,并将这些界面元素对象添加到界面元素管理器中,由界面元素管理器统一管理;
C24. 最后由界面显示管理器将读取的所有界面元素显示到屏幕上。
所述的WinCE产品界面主题更新变换处理方法,其中,所述步骤C21与C22之间还还包括:
C212、分析所读取的与修改相关的xml可扩展标记语言界面配置文件,判断与修改相关的xml可扩展标记语言界面配置文件中使用的相关标签是否符合预定的规范; 如果与修改相关的xml可扩展标记语言界面配置文件符合预定规范,则进入步骤C22。
所述的WinCE产品界面主题更新变换处理方法,其中,所述步骤C中的根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件包括:通过修改XML文件进行界面配置,对界面元素的属性进行修改。
所述的WinCE产品界面主题更新变换处理方法,其中,所述界面元素包括菜单元素、按钮元素、标题元素,则所述步骤C中的根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件包括:通过修改XML文件进行界面配置,对界面元素的菜单元素、按钮元素、标题栏元素的字体大小属性、字体颜色属性、背景图属性进行修改。
一种WinCE产品界面主题更新变换处理系统,其中,包括:
开发分离处理模块,用于在WinCE应用程序开发时采用将界面布局和程序代码分离的模型-视图-控制器设计模式,将界面表示层与业务逻辑层进行分离,
分块开发处理模块、用于在界面表示层采用分块的模块化编程,每个模块采用独立的XML可扩展标记语言描述界面主题元素,并设置界面元素加载引擎,将XML可扩展标记语言中的标签元素映射成内存对象,用于自动生成对应模块的用户界面布局;
界面修改更新处理模块,用于当需修改用户界面时,根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件,根据所述修改控制实现界面元素加载引擎,将修改的xml可扩展标记语言界面配置文件中的标签元素映射成内存对象,自动生成修改后的对应模块的用户界面布局。
所述的WinCE产品界面主题更新变换处理系统,其中,界面修改更新处理模块包括:
编写与修改单元、用于根据定义的界面元素标签,编写与修改相关的xml界面配置文件,并把编写的配置文件和界面图片放置到指定目录中,形成为界面主题数据文件;
启动更新单元,用于启动更新界面主题数据文件,并向需要更换界面的应用程序发送更新通知;
调用读取单元,用于需要更换界面的应用程序接收更新通知后,将调用基于文件对象模型 的界面元素加载引擎,读取界面主题数据文件的表示层信息;
界面元素修改处理单元,用于控制界面主题数据文件的表示层信息读取成功后,将根据界面主题数据文件中与修改相关配置,自动修改对应的应用程序的图标、背景、布局、字体信息,以在程序运行时循环生产界面元素,动态生成界面。
所述的WinCE产品界面主题更新变换处理系统,其中,界面修改更新处理模块还包括:
界面配置文件修改单元,用于根据定义的界面元素标签,编写与修改相关的xml可扩展标记语言界面配置文件;
配置文件读取单元,用于读取与修改相关的xml可扩展标记语言界面配置文件;
界面元素读取单元,用于读取与修改相关的xml可扩展标记语言界面配置文件中定义的所有界面元素标签;
生成处理单元,用于将读取的所有界面元素标签其映射到内存,生成界面元素对象,并将这些界面元素对象添加到界面元素管理器中,由界面元素管理器统一管理;
显示处理单元,用于最后由界面显示管理器将读取的所有界面元素显示到屏幕上。
本发明所提供的一种WinCE产品界面主题更新变换处理方法及系统,由于开发WinCE应用程序时采用了MVC(模型-视图-控制器)设计模式,将界面表示层与业务逻辑层进行分离,在界面表示层,采用模块化的编程思想,实现了基于XML的界面自动生成技术,可以根据需要在XML文件中配置不同的界面元素,快速定制一个用户界面。并具有如下优点:
(1)用户可以通过修改XML文件进行界面配置,对界面元素(如菜单、按钮、标题栏等)的属性(如字体大小、字体颜色、背景图等)进行修改,操作简单方便,实现容易。
(2)实现了基于DOM(文件对象模型) API的界面元素加载引擎,可以读取XML配置文件的表示层信息,并在程序运行时循环生产界面元素,动态生成界面,界面更新效率快。
(3)编写了基于WinCE的界面定制工具,用户可以通过此工具修改XML节点和属性值等界面元素,自由定制用户界面,大大为用户提供了方便。
而采用了XML(可扩展标记语言)描述界面主题元素,实现了界面元素加载引擎,可以将XML中的标签元素映射成内存对象。用户可以通过修改XML文件或使用提供的工具软件,方便的修改应用程序的主题界面。
软件界面使用模块化搭建,把模块完全独立出来,可以很好地实现软件复用,并可以形成一个基础软件库,加快以后的软件开发。
每次有新的客户要求,都可以在原有软件模块上,迭代开发新的模块。一方面加快了软件开发速度,另一方面可以给用户提供更丰富的界面元素选择,为用户提供了方便。
具体实施方式
本发明所提供的一种WinCE产品界面主题更新变换处理方法及系统,应用在WinCE车载导航仪领域,为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例所提供的一种WinCE产品界面主题更新变换处理方法,如图1所示,包括以下步骤:
步骤S100、在WinCE应用程序开发时采用将界面布局和程序代码分离的模型-视图-控制器设计模式,将界面表示层与业务逻辑层进行分离。
本发明主要应用在WinCE车载导航仪领域,在具体实施时,WinCE应用程序采用将界面布局和程序代码分离MVC的(模型-视图-控制器)设计模式,将界面表示层与业务逻辑层进行分离,在界面表示层,采用模块化的编程思想,实现了基于XML的界面自动生成技术,可以根据需要在XML文件中配置不同的界面元素,快速定制一个用户界面,具体如步骤S200所述。
步骤S200、在界面表示层采用分块的模块化编程,每个模块采用独立的XML可扩展标记语言描述界面主题元素,并设置界面元素加载引擎,将XML可扩展标记语言中的标签元素映射成内存对象,用于自动生成对应模块的用户界面布局。
即具体实施时,本发明对界面表示层的设计采用模块化分块设计,以方便对各小分块进行单独修改,不影响整体。并对各分块的模块采用了XML(可扩展标记语言)描述界面主题元素,实现了界面元素加载引擎,可以将XML中的标签元素映射成内存对象。用户可以通过修改XML文件或使用我们提供的工具软件,方便的修改应用程序的主题界面,界面修改具体如步骤S300。
而软件界面使用模块化搭建,把模块完全独立出来,可以很好地实现软件复用,并可以形成一个基础软件库,加快以后的软件开发,提高了开发及修改效率。
步骤S300、当需修改用户界面时,根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件,根据所述修改控制实现界面元素加载引擎,将修改的xml可扩展标记语言界面配置文件中的标签元素映射成内存对象,自动生成修改后的对应模块的用户界面布局。
本发明实施例中,当需修改用户界面时,根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件,例如可以通过修改XML可扩展标记语言界面配置文件进行界面配置,对界面元素(如菜单、按钮、标题栏等)的属性(如字体大小、字体颜色、背景图等)进行修改。
本发明是采用基于DOM(文件对象模型) API的界面元素加载引擎,它可以读取XML配置文件的表示层信息,并在程序运行时循环生产界面元素,动态生成界面。步骤S300具体包括如下步骤:
其中,用户切换主题或者修改界面元素流程主要包括:
C10、根据定义的界面元素标签,编写与修改相关的xml界面配置文件,并把编写的配置文件和界面图片放置到指定目录中,形成为界面主题数据文件;
其中,所述根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件包括:通过修改XML文件进行界面配置,对界面元素的属性进行修改。
而所述界面元素包括菜单元素、按钮元素、标题元素,什么叫界面元素标签请举例说明,1.比如标签:<Dlg_Page />, 代表"页". 2. 比如标签<Button />,代表"按钮".
本实施例中所述根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件包括:通过修改XML文件进行界面配置,对界面元素的菜单元素、按钮元素、标题栏元素的字体大小属性、字体颜色属性、背景图属性进行修改。
C11、启动更新界面主题数据文件,并向需要更换界面的应用程序发送更新通知;
C12、需要更换界面的应用程序接收更新通知后,将调用基于DOM文件对象模型 API的界面元素加载引擎读取界面主题数据文件的表示层信息;
C13、界面主题数据文件的表示层信息读取成功后,将根据界面主题数据文件中与修改相关配置,自动修改对应的应用程序的图标、背景、布局、字体信息,以在程序运行时循环生产界面元素,动态生成界面。用户切换主题或者修改界面元素流程具体实施时,如图2所示,包括:
S20,接收用户操作指令点击切换主题;
S21,更新主题数据文件; 其中主题数据文件是根据定义的界面元素标签,编写与修改相关的xml界面配置文件,并把编写的配置文件和界面图片放置到指定目录中,而形成的界面主题数据文件。
S22,发送广播,通知系统更新主题;
S23,接收到系统主题更新广播;
S24,判断是否读取到主题数据文件,当是时进入步骤S25,当否时进入步骤S201通知用户读取资源失败并返回步骤S20;
即需要更换界面的应用程序接收更新通知后,将调用基于DOM文件对象模型 API的界面元素加载引擎读取界面主题数据文件的表示层信息.
S25,处理主题数据格式转换、备份;
S26,软件更新主题数据图标、背景、布局;
即界面主题数据文件的表示层信息读取成功后,将根据界面主题数据文件中与修改相关配置,自动修改对应的应用程序的图标、背景、布局、字体信息,以在程序运行时循环生产界面元素,动态生成界面。
S27,读取加载新数据;
S28,主题更新成功。
更进一步地,所述步骤S300具体还包括:
S30,读取界面配置文件。
如前所述根据定义的界面元素标签,编写与修改相关的xml可扩展标记语言界面配置文件;并读取与修改相关的xml可扩展标记语言界面配置文件。
S31,打开、并判断文件是否损坏,当是时进入步骤S32,当否时返回步骤S30;
S32,分析XML配置文件;
分析所读取的与修改相关的xml可扩展标记语言界面配置文件,判断与修改相关的xml可扩展标记语言界面配置文件中使用的相关标签是否符合预定的规范; 如果与修改相关的xml可扩展标记语言界面配置文件符合预定规范,则进入步骤S33。
本发明实施中,与修改相关的xml可扩展标记语言界面配置文件符合预定规范,规范是指xml文件中必须使用预先定义的标签来描述界面,比如必须使用<Button />标签描述"按钮",必须使用<Dlg_Page />标签描述"页",不能随便写其它标签来描述界面。
S33,读取界面全局配置;
即读取与修改相关的xml可扩展标记语言界面配置文件中定义的所有界面元素标签。其中,界面全局配置"描述了整个界面的公共信息,比如界面的大小,界面的背景图片等。
S34,判断是否读取到界面元素标签,当是时入步骤S35,当否时进入步骤S38;
S35,实例化配置文件中的标签元素,如:<Button>;
本实施例中所述的实例化配置文件中的标签元素", "实例化"是指将xml配置文件中的标签转换成内存实例, 内存实例也可以叫内存对象。 比如把配置文件中的<Button>标签转化成内存中的“按钮对象”。
S36,把实例化后的界面元素对象添加到界面元素管理器中;
本实施例中把实例化后的界面元素对象添加到界面元素管理器中" , 比如把内存中的“按钮对象”添加到”“界面元素管理器“中
S37,发送到界面显示管理器;
即步骤S36和S37,是将读取的所有界面元素标签其映射到内存,生成界面元素对象,并将这些界面元素对象添加到界面元素管理器中,由界面元素管理器统一管理;
S38,绘画显示用户界面。
最后由界面显示管理器将读取的所有界面元素显示到屏幕上。
例如可以通过修改xml配置文件,定制成如图5a、图5b和图5c中3种不同的界面主题。
进一步进,本发明实施例中,所述的WinCE产品界面主题更新变换处理方法,当有新界面修改要求,在原有采用分块的在界面表示层的软件模块上,迭代开发新的模块。
提供一种一种WinCE产品界面主题更新变换处理方法及系统,其采用将界面布局和程序代码分离,解决了客户无法自由定制应用程序界面的问题,同时也提高了应用程序的开发效率。
基于上述实施,本发明还提供了一种WinCE产品界面主题更新变换处理系统,如图4所示,所述系统包括:
开发分离处理模块410,用于在WinCE应用程序开发时采用将界面布局和程序代码分离的模型-视图-控制器设计模式,将界面表示层与业务逻辑层进行分离,具体如上所述。
分块开发处理模块420、用于在界面表示层采用分块的模块化编程,每个模块采用独立的XML可扩展标记语言描述界面主题元素,并设置界面元素加载引擎,将XML可扩展标记语言中的标签元素映射成内存对象,用于自动生成对应模块的用户界面布局,具体如上所述。
界面修改更新处理模块430,用于当需修改用户界面时,根据定义的界面元素标签,编写与修改模块相关的xml可扩展标记语言界面配置文件,根据所述修改控制实现界面元素加载引擎,将修改的xml可扩展标记语言界面配置文件中的标签元素映射成内存对象,自动生成修改后的对应模块的用户界面布局,具体如上所述。
进一步地,所述的WinCE产品界面主题更新变换处理系统,其中,界面修改更新处理模块430包括:
编写与修改单元、用于根据定义的界面元素标签,编写与修改相关的xml界面配置文件,并把编写的配置文件和界面图片放置到指定目录中,形成为界面主题数据文件,具体如上所述。
启动更新单元,用于启动更新界面主题数据文件,并向需要更换界面的应用程序发送更新通知,具体如上所述。
调用读取单元,用于需要更换界面的应用程序接收更新通知后,将调用基于文件对象模型 的界面元素加载引擎,读取界面主题数据文件的表示层信息,具体如上所述。
界面元素修改处理单元,用于控制界面主题数据文件的表示层信息读取成功后,将根据界面主题数据文件中与修改相关配置,自动修改对应的应用程序的图标、背景、布局、字体信息,以在程序运行时循环生产界面元素,动态生成界面,具体如上所述。
进一步地,所述的WinCE产品界面主题更新变换处理系统,其中,界面修改更新处理模块430还包括:
界面配置文件修改单元,用于根据定义的界面元素标签,编写与修改相关的xml可扩展标记语言界面配置文件,具体如上所述。
配置文件读取单元,用于读取与修改相关的xml可扩展标记语言界面配置文件,具体如上所述。
界面元素读取单元,用于读取与修改相关的xml可扩展标记语言界面配置文件中定义的所有界面元素标签,具体如上所述。
生成处理单元,用于将读取的所有界面元素标签其映射到内存,生成界面元素对象,并将这些界面元素对象添加到界面元素管理器中,由界面元素管理器统一管理,具体如上所述。
显示处理单元,用于最后由界面显示管理器将读取的所有界面元素显示到屏幕上,具体如上所述。
综上所述,本发明所提供的一种WinCE产品界面主题更新变换处理方法及系统,由于开发WinCE应用程序时采用了MVC(模型-视图-控制器)设计模式,将界面表示层与业务逻辑层进行分离,在界面表示层,采用模块化的编程思想,实现了基于XML的界面自动生成技术,可以根据需要在XML文件中配置不同的界面元素,快速定制一个用户界面。并具有如下优点:
(1)用户可以通过修改XML文件进行界面配置,对界面元素(如菜单、按钮、标题栏等)的属性(如字体大小、字体颜色、背景图等)进行修改,操作简单方便,实现容易。
(2)实现了基于DOM(文件对象模型) API的界面元素加载引擎,可以读取XML配置文件的表示层信息,并在程序运行时循环生产界面元素,动态生成界面,界面更新效率快。
(3)编写了基于WinCE的界面定制工具,用户可以通过此工具修改XML节点和属性值等界面元素,自由定制用户界面,大大为用户提供了方便。
而采用了XML(可扩展标记语言)描述界面主题元素,实现了界面元素加载引擎,可以将XML中的标签元素映射成内存对象。用户可以通过修改XML文件或使用提供的工具软件,方便的修改应用程序的主题界面。
软件界面使用模块化搭建,把模块完全独立出来,可以很好地实现软件复用,并可以形成一个基础软件库,加快以后的软件开发。
每次有新的客户要求,都可以在原有软件模块上,迭代开发新的模块。一方面加快了软件开发速度,另一方面可以给用户提供更丰富的界面元素选择,为用户提供了方便。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。