CN111475237A - 菜单处理方法、装置、电子设备及存储介质 - Google Patents

菜单处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111475237A
CN111475237A CN202010153141.2A CN202010153141A CN111475237A CN 111475237 A CN111475237 A CN 111475237A CN 202010153141 A CN202010153141 A CN 202010153141A CN 111475237 A CN111475237 A CN 111475237A
Authority
CN
China
Prior art keywords
attribute
menu
view element
type
menu language
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010153141.2A
Other languages
English (en)
Inventor
张美聪
王康桑
王艳辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shilian Power Information Technology Co ltd Tibet Branch
Original Assignee
Visionvera Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN202010153141.2A priority Critical patent/CN111475237A/zh
Publication of CN111475237A publication Critical patent/CN111475237A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus

Abstract

本发明提供了一种菜单处理方法、装置、电子设备及存储介质。其中菜单处理方法包括:加载菜单语言文件,所述菜单语言文件采用预设的通用菜单语言生成;对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。本发明无需重复开发相同的功能,处理过程更加简便,效率更高。

Description

菜单处理方法、装置、电子设备及存储介质
技术领域
本发明涉及数据处理技术领域,特别是涉及一种菜单处理方法、装置、电子设备及存储介质。
背景技术
随着网络科技的快速发展,视频会议、视频教学等双向通信在用户的生活、工作、学习等方面广泛普及。一般地,在进行通信的终端上,通常都会提供菜单为用户导航,以便用户与终端进行交互。
当前的终端存在多种操作系统,比如Window、Linux、Android(安卓)、iOS等,不同操作系统的终端上的菜单往往都具有一样的功能。目前的做法是每个平台单独编写对应操作系统下的图形界面程序(即菜单)。但是,该种方式会导致重复开发相同的功能,处理过程较为复杂,效率较低。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种菜单处理方法、装置、电子设备及存储介质。
第一方面,本发明实施例公开了一种菜单处理方法,所述方法包括:
加载菜单语言文件;所述菜单语言文件采用预设的通用菜单语言生成;
对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;
针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;
按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
可选地,所述按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制,包括:从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。
可选地,所述将所述视图元素的显示属性转换成适配当前操作系统的显示属性,包括:从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
可选地,所述关联属性包括关联事件属性和关联业务属性;所述按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,包括:从预设的函数接口列表中,查找所述关联事件属性指示的目标事件处理函数接口,以及所述关联业务属性指示的目标业务信令函数接口;将所述视图元素分别与所述目标事件处理函数接口和所述目标业务信令函数接口关联绑定。
可选地,所述对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性,包括:从所述菜单语言文件中逐个读取类型标签,将所述类型标签与预设的标签集合进行匹配;所述标签集合包括多个类型标签和多个属性标签;在所述类型标签匹配成功时,记录一个视图元素,将所述类型标签对应的类型记录为所述视图元素的类型;从所述菜单语言文件中逐个读取所述类型标签下的属性标签,将所述属性标签与所述标签集合进行匹配;在所述属性标签匹配成功时,将所述属性标签对应的属性记录为所述视图元素的属性。
第二方面,本发明实施例公开了一种菜单处理装置,所述装置包括:
加载模块,用于加载菜单语言文件;所述菜单语言文件采用预设的通用菜单语言生成;
解析模块,用于对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;
转换模块,用于针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性;
绘制模块,用于按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;
关联模块,用于按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
可选地,所述绘制模块包括:第一查找单元,用于从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;接口调用单元,用于调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。
可选地,所述转换模块包括:第二查找单元,用于从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;属性转换单元,用于按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
可选地,所述关联属性包括关联事件属性和关联业务属性;所述关联模块包括:第三查找单元,用于从预设的函数接口列表中,查找所述关联事件属性指示的目标事件处理函数接口,以及所述关联业务属性指示的目标业务信令函数接口;函数关联单元,用于将所述视图元素分别与所述目标事件处理函数接口和所述目标业务信令函数接口关联绑定。
可选地,所述解析模块包括:第一匹配单元,用于从所述菜单语言文件中逐个读取类型标签,将所述类型标签与预设的标签集合进行匹配;所述标签集合包括多个类型标签和多个属性标签;第一记录单元,用于在所述类型标签匹配成功时,记录一个视图元素,将所述类型标签对应的类型记录为所述视图元素的类型;第二匹配单元,用于从所述菜单语言文件中逐个读取所述类型标签下的属性标签,将所述属性标签与所述标签集合进行匹配;第二记录单元,用于在所述属性标签匹配成功时,将所述属性标签对应的属性记录为所述视图元素的属性。
第三方面,本发明实施例公开了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质;当所述指令由所述一个或多个处理器执行时,使得所述处理器执行如上任一项所述的菜单处理方法。
第四方面,本发明实施例公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一项所述的菜单处理方法。
本发明实施例中,采用通用菜单语言编写菜单语言文件。在生成菜单时,终端加载菜单语言文件;对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。由此可知,本发明实施例中无需再针对不同的操作系统单独编写菜单,而是采用通用菜单语言编写统一的菜单语言文件,通过对菜单语言文件进行解析,然后对各视图元素进行绘制、关联后,即可自动生成适配当前操作系统的菜单,无需重复开发相同的功能,处理过程更加简便,效率更高。
附图说明
图1是本发明实施例一的一种菜单处理方法的步骤流程图。
图2是本发明实施例二的一种模块通信连接的示意图。
图3是本发明实施例二的一种菜单处理过程的示意图。
图4是本发明实施例二的一种解析菜单语言文件的流程图。
图5是本发明实施例三的一种菜单处理装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的菜单处理方法可以应用于需要提供菜单的终端中,比如视频会议终端等。终端可以为应用于视联网中的视联网终端、也可以为应用于互联网中的互联网终端。比如,终端可以为机顶盒、手机、平板电脑、笔记本电脑等。终端的操作系统可以为Window、Linux、Android、iOS等。下面,对本发明实施例中的菜单处理方法进行详细说明。
实施例一
参照图1,示出了本发明实施例一的一种菜单处理方法的步骤流程图。
本发明实施例的菜单处理方法可以包括以下步骤:
步骤101,加载菜单语言文件。
本发明实施例中,对应于终端的操作系统,设计应用于不同操作系统的菜单语言解析器。比如,设计对应于Window、Linux、Android、iOS等版本的菜单语言解析器。该菜单语言解析器可以以软件的形式安装在终端上,用于执行本发明实施例的菜单处理方法。
在生成菜单语言文件时,无需区分终端的操作系统,采用预设的通用菜单语言编写菜单语言文件,然后由终端上安装的菜单语言解析器对菜单语言文件进行解析后,在终端上生成适配当前操作系统的菜单。其中,通用菜单语言能够实现菜单在终端上直接可视化的界面显示。比如,通用菜单语言可以采用XML(Extensible Markup Language,可扩展标记语言),HTML(HyperText Markup Language,超文本标记语言),Android、iOS等的原生语言,等等。
步骤102,对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性。
开发人员采用预设的通用菜单语言编写统一的菜单语言文件,该菜单语言文件描述了菜单中各视图元素的类型和属性。菜单语言解析器加载菜单语言文件后,对该菜单语言文件进行解析,可以得到该菜单语言文件对应的菜单中各视图元素的类型和属性。
其中,视图元素是指菜单中的UI(User Interface,用户界面)控件。视图元素的类型可以包括button(按钮)、listview(列表)、textview(文本)、image(图片),等等。视图元素的属性可以包括显示属性、关联属性等。显示属性可以包括width(宽度)、height(高度)、postionX(X坐标)、postionY(Y坐标)、z-order(层次顺序)、source(素材源),等等。关联属性可以包括关联事件属性、关联业务属性,等等。
步骤103,针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制。
在得到每个视图元素的类型和属性后,菜单语言解析器针对每个视图元素分别进行处理。
在对一个视图元素进行处理的过程中,由于从菜单语言文件中解析出的显示属性可能并不适配当前的操作系统,因此可以先将视图元素的显示属性转换成适配当前操作系统的显示属性。然后,按照视图元素的类型和转换后的显示属性对所述视图元素进行绘制。
步骤104,按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
由于视图元素还可能与某些事件和业务关联,比如,事件可以包括按键触发事件等,业务可以包括视频会议业务等。因此还要按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联。
在针对全部视图元素进行绘制和关联等处理完成后,即可得到适配当前操作系统的菜单。
本发明实施例中无需再针对不同的操作系统单独编写菜单,而是采用通用菜单语言编写统一的菜单语言文件,通过对菜单语言文件进行解析,然后对各视图元素进行绘制、关联后,即可自动生成适配当前操作系统的菜单,无需重复开发相同的功能,处理过程更加简便,效率更高。
实施例二
本发明实施例以视联网终端中的菜单处理过程为例进行说明。视联网是可以实现大规模、高质量、实时、双向对称的高清视频全交换,具备互联网一样的全面互动性,但又不同于互联网。它是互联网的更高级形态,是一个实时网络,能够实现目前互联网无法实现的全网高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面,同时网络不可被攻击,具有像电话网一样的结构性安全特征。
在视联网终端中,可以包括文件加载器、菜单语言解析器、图形渲染器、事件发生器、视联网服务模块等模块。参照图2,示出了本发明实施例二的一种模块通信连接的示意图。如图2所示,本发明实施例中菜单语言解析器分别与文件加载器、图形渲染器、事件发生器、视联网服务模块通信连接。通过文件加载器对文件进行解压加载,通过菜单语言解析器对菜单语言文件进行解析,通过图形渲染器对视图元素进行渲染,通过事件发生器检测视图元素的关联事件,通过视联网服务模块处理视图元素的关联业务。
参照图3,示出了本发明实施例二的一种菜单处理过程的示意图。本发明实施例的菜单处理过程可以包括:
1、文件加载。
开发人员开发菜单文件,菜单文件可以包括菜单语言文件和菜单素材文件。其中,菜单语言文件采用通用菜单语言编写,主要描述了菜单中的各视图元素的类型和属性等信息。菜单素材文件包含菜单中用到的各种素材,比如图片等。
菜单文件被压缩成应用包后加载到文件加载器。文件加载器中可以封装一个文件解压工具,通过封装的ZipMenu类中的unZipMenu方法对应用包进行解压,解压后得到菜单语言文件和菜单素材文件。菜单语言解析器加载菜单语言文件,对菜单语言文件进行解析。
2、类型解析。
3、属性解析。
菜单语言解析器对菜单语言文件进行类型解析和属性解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性。
本发明实施例中,预先定义基本数据类型。其中包括:视图元素的类型标签:比如可以包括button、listview、textview、image,等等。视图元素的属性标签:比如可以包括width、height、postionX、postionY、z-order、source、keyevent、service_request,等等。其中,width、height、postionX、postionY、z-order、source表示显示属性。keyevent、service_request表示关联属性,keyevent表示关联事件属性,service_request表示关联业务属性。
一个类型下可以包括多个属性。预先设置标签集合,标签集合中包括多个类型标签和各类型标签下的属性标签。比如,{button,width,height,positionX,positionY,z-order,keyevent,service_request.…………….},等等。
参照图4,示出了本发明实施例二的一种解析菜单语言文件的流程图。解析菜单语言文件的过程包括:
步骤401,读取类型标签。
从菜单语言文件中的第一个类型标签开始,逐个读取类型标签。
步骤402,将类型标签与标签集合匹配。如果匹配,则执行步骤403;如果不匹配,则执行步骤408。
预先设置标签集合,该标签集合中包括多个类型标签和多个属性标签。标签集合中的类型标签和属性标签为标准的类型标签和标准的属性标签,是用于验证菜单语言文件中的对应标签是否正确的标签。
在读取出一个类型标签后,将该类型标签与预设的标签集合进行匹配。如果标签集合中存在与该类型标签匹配的类型标签,则确定该类型标签匹配成功(即匹配),否则确定该类型标签匹配失败(即不匹配)。需要说明的是,该匹配可以为模糊匹配。比如,简写和全称可以匹配成功等。
步骤403,记录类型。
如果该类型标签匹配成功,则记录一个新的视图元素,将该类型标签对应的类型记录为该视图元素的类型。比如,读取出一个类型标签为button,并且该类型标签匹配成功,则可以记录一个新的视图元素,该视图元素的类型为button。
步骤404,读取属性标签。
在步骤403中将该类型标签对应的类型记录为该视图元素的类型后,从菜单语言文件中该类型标签下的第一个属性标签开始,逐个读取该类型标签下的属性标签。
步骤405,将属性标签与标签集合匹配。如果匹配,则执行步骤406;如果不匹配,则执行步骤407。
在读取出一个属性标签后,将该属性标签与预设的标签集合进行匹配。如果标签集合中存在与该属性标签匹配的属性标签,则确定该属性标签匹配成功(即匹配),否则确定该属性标签匹配失败(即不匹配)。
步骤406,记录属性。
如果该属性标签匹配成功时,则将该属性标签对应的属性记录为该视图元素的属性。比如,读取出一个属性标签为width,并且该属性标签匹配成功,则记录该视图元素的属性为width。
步骤407,判断属性标签是否结束。若是,则执行步骤408。若否,则返回步骤404。
如果在步骤405中确定出属性标签与标签集合不匹配,则放弃当前的属性标签,执行该步骤407。在步骤406中将该属性标签对应的属性记录为该视图元素的属性后,也执行该步骤407。
在该步骤407中,判断属性标签是否结束,也即判断该类型标签下是否还存在未读取的属性标签。如果该类型标签下还存在未读取的属性标签,则返回步骤404继续读取该类型标签下的下一个属性标签。如果该类型标签下的属性标签全部读取完,则执行步骤408。
步骤408,判断类型标签是否结束。若是,则结束。若否,则返回步骤401。
如果在步骤402中确定出类型标签与标签集合不匹配,则放弃当前的类型标签,执行该步骤408。如果在步骤407中判断出属性标签未结束,也执行该步骤408。
在该步骤408中,判断类型标签是否结束,也即判断菜单语言文件中是否还存在未读取的类型标签。如果还存在未读取的类型标签,则返回步骤401继续读取下一个类型标签。如果类型标签下全部读取完,则结束解析过程。
4、视图元素绘制。
经过对菜单语言文件的解析,得到该菜单语言文件对应的菜单中各视图元素的类型和属性。然后基于当前操作系统(可能为Window、Linux、Android、iOS等),针对每个视图元素分别进行处理,绘制对应的视图元素。
由于在不同的操作系统中,视图元素的显示属性的属性值可能不同。比如,对于width这一显示属性,其在Window和Android这两种操作系统下的属性值是不同的。因此,在绘制视图元素前,可以将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
本发明实施例中,可以预先设置当前操作系统下显示属性与转换比例的映射关系。该映射关系中可以包括在当前操作系统下,各显示属性以及该显示属性对应的转换比例。当然,需要转换的显示属性可能为部分显示属性,比如对于source这一显示属性可以不用转换。将所述视图元素的显示属性转换成适配当前操作系统的显示属性的过程可以包括:从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
对显示属性进行转换后,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制。
本发明实施例中,可以通过终端中绘制图形的API(Application ProgrammingInterface,应用程序编程接口)对视图元素进行绘制。由于在不同的操作系统中,绘制图形的API接口不同,因此可以预先设置当前操作系统下类型与API接口的映射关系。该映射关系中可以包括在当前操作系统下,各视图元素的类型以及该类型对应的API接口。按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制的过程可以包括:从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。比如,视图元素的类型为button,则可以调用当前操作系统下用于绘制button的相关API接口绘制该button。该种方式采用终端自身的API接口对视图元素进行绘制,处理过程更加简便。
需要说明的是,如果视图元素的显示属性中包含source,该source对应的属性值为素材路径,则在绘制时,根据source中指示的素材路径从菜单素材文件中获取对应的素材。
5、关联事件和关联业务。
对于每个视图元素来说,还要按照视图元素的关联属性将视图元素与所述关联属性指示的业务和事件进行关联,以便在用户点击对应的视图元素后,能够顺利检测到对应事件,并执行对应业务。
本发明实施例中,可以预先设置函数接口列表。该函数接口列表中可以包括菜单关联的各事件处理函数接口和业务信令函数接口。关联属性包括关联事件属性和关联业务属性。按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联可以包括:从预设的函数接口列表中,查找所述关联事件属性指示的目标事件处理函数接口,以及所述关联业务属性指示的目标业务信令函数接口;将所述视图元素分别与所述目标事件处理函数接口和所述目标业务信令函数接口关联绑定。比如,关联事件属性keyevent中会指示目标事件处理函数接口,关联业务属性service_request中会指示目标业务信令函数接口,从函数接口列表中查找keyevent和service_request中指示的对应函数接口。
将视图元素关联事件和业务后,可以通过事件发生器检测视图元素的关联事件,通过视联网服务模块处理视图元素的关联业务。
6、显示。
对全部视图元素进行绘制和关联后,即可得到适配当前操作系统的菜单。之后由终端的图形渲染器对菜单进行渲染后显示到视图窗口。
本发明实施例中,制定统一的通用菜单语言,按照规范进行解析,并且为各操作系统平台下的UI开发接口做好对应,各个操作系统平台里的菜单语言解析器可以对菜单文件进行加载、解析,生成菜单图形界面。
实施例三
参照图5,示出了本发明实施例三的一种菜单处理装置的结构框图。
本发明实施例的菜单处理装置可以包括加载模块501、解析模块502、转换模块503、绘制模块504和关联模块505。
加载模块501,用于加载菜单语言文件;所述菜单语言文件采用预设的通用菜单语言生成。
解析模块502,用于对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性。
转换模块503,用于针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
绘制模块504,用于按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制。
关联模块505,用于按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
本发明实施例中,所述绘制模块504包括:第一查找单元,用于从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;接口调用单元,用于调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。
本发明实施例中,所述转换模块503包括:第二查找单元,用于从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;属性转换单元,用于按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
本发明实施例中,所述关联属性包括关联事件属性和关联业务属性;所述关联模块505包括:第三查找单元,用于从预设的函数接口列表中,查找所述关联事件属性指示的目标事件处理函数接口,以及所述关联业务属性指示的目标业务信令函数接口;函数关联单元,用于将所述视图元素分别与所述目标事件处理函数接口和所述目标业务信令函数接口关联绑定。
本发明实施例中,所述解析模块502包括:第一匹配单元,用于从所述菜单语言文件中逐个读取类型标签,将所述类型标签与预设的标签集合进行匹配;所述标签集合包括多个类型标签和多个属性标签;第一记录单元,用于在所述类型标签匹配成功时,记录一个视图元素,将所述类型标签对应的类型记录为所述视图元素的类型;第二匹配单元,用于从所述菜单语言文件中逐个读取所述类型标签下的属性标签,将所述属性标签与所述标签集合进行匹配;第二记录单元,用于在所述属性标签匹配成功时,将所述属性标签对应的属性记录为所述视图元素的属性。
本发明实施例中无需再针对不同的操作系统单独编写菜单,而是采用通用菜单语言编写统一的菜单语言文件,通过对菜单语言文件进行解析,然后对各视图元素进行绘制、关联后,即可自动生成适配当前操作系统的菜单,无需重复开发相同的功能,处理过程更加简便,效率更高。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在本发明的实施例中,还提供了一种电子设备。该电子设备可以包括一个或多个处理器,以及其上存储有指令的一个或多个机器可读介质,指令例如应用程序。当所述指令由所述一个或多个处理器执行时,使得所述处理器执行上述的菜单处理方法。
在本发明的实施例中,还提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序可由电子设备的处理器执行,以完成上述的菜单处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种菜单处理方法、装置、电子设备及存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种菜单处理方法,其特征在于,所述方法包括:
加载菜单语言文件;所述菜单语言文件采用预设的通用菜单语言生成;
对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;
针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性,按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;
按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
2.根据权利要求1所述的方法,其特征在于,所述按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制,包括:
从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;
调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。
3.根据权利要求1所述的方法,其特征在于,所述将所述视图元素的显示属性转换成适配当前操作系统的显示属性,包括:
从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;
按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
4.根据权利要求1所述的方法,其特征在于,所述关联属性包括关联事件属性和关联业务属性;所述按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,包括:
从预设的函数接口列表中,查找所述关联事件属性指示的目标事件处理函数接口,以及所述关联业务属性指示的目标业务信令函数接口;
将所述视图元素分别与所述目标事件处理函数接口和所述目标业务信令函数接口关联绑定。
5.根据权利要求1所述的方法,其特征在于,所述对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性,包括:
从所述菜单语言文件中逐个读取类型标签,将所述类型标签与预设的标签集合进行匹配;所述标签集合包括多个类型标签和多个属性标签;
在所述类型标签匹配成功时,记录一个视图元素,将所述类型标签对应的类型记录为所述视图元素的类型;
从所述菜单语言文件中逐个读取所述类型标签下的属性标签,将所述属性标签与所述标签集合进行匹配;
在所述属性标签匹配成功时,将所述属性标签对应的属性记录为所述视图元素的属性。
6.一种菜单处理装置,其特征在于,所述装置包括:
加载模块,用于加载菜单语言文件;所述菜单语言文件采用预设的通用菜单语言生成;
解析模块,用于对所述菜单语言文件进行解析,得到所述菜单语言文件对应的菜单中各视图元素的类型和属性;所述属性包括显示属性和关联属性;
转换模块,用于针对每个视图元素,将所述视图元素的显示属性转换成适配当前操作系统的显示属性;
绘制模块,用于按照所述视图元素的类型和转换后的显示属性对所述视图元素进行绘制;
关联模块,用于按照所述关联属性将所述视图元素与所述关联属性指示的业务和事件进行关联,得到所述菜单。
7.根据权利要求6所述的装置,其特征在于,所述绘制模块包括:
第一查找单元,用于从预设的当前操作系统下类型与API接口的映射关系中,查找所述视图元素的类型对应的目标API接口;
接口调用单元,用于调用所述目标API接口,通过所述目标API接口按照所述转换后的显示属性,对所述视图元素进行绘制。
8.根据权利要求7所述的装置,其特征在于,所述转换模块包括:
第二查找单元,用于从预设的当前操作系统下显示属性与转换比例的映射关系中,查找所述视图元素的显示属性对应的目标转换比例;
属性转换单元,用于按照所述目标转换比例,将所述视图元素的显示属性转换成适配当前操作系统的显示属性。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质;
当所述指令由所述一个或多个处理器执行时,使得所述处理器执行如权利要求1至5任一项所述的菜单处理方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1至5任一项所述的菜单处理方法。
CN202010153141.2A 2020-03-06 2020-03-06 菜单处理方法、装置、电子设备及存储介质 Pending CN111475237A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010153141.2A CN111475237A (zh) 2020-03-06 2020-03-06 菜单处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010153141.2A CN111475237A (zh) 2020-03-06 2020-03-06 菜单处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN111475237A true CN111475237A (zh) 2020-07-31

Family

ID=71747211

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010153141.2A Pending CN111475237A (zh) 2020-03-06 2020-03-06 菜单处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111475237A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656126A (zh) * 2021-07-30 2021-11-16 北京数码大方科技股份有限公司 信息系统的菜单显示方法及菜单显示装置、电子设备
CN114461110A (zh) * 2021-12-30 2022-05-10 惠州华阳通用电子有限公司 一种车机菜单语言更换方法及存储介质
CN114637499A (zh) * 2022-03-31 2022-06-17 阿里巴巴(中国)有限公司 可视化组件处理方法、装置、设备及介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656126A (zh) * 2021-07-30 2021-11-16 北京数码大方科技股份有限公司 信息系统的菜单显示方法及菜单显示装置、电子设备
CN113656126B (zh) * 2021-07-30 2023-10-27 北京数码大方科技股份有限公司 信息系统的菜单显示方法及菜单显示装置、电子设备
CN114461110A (zh) * 2021-12-30 2022-05-10 惠州华阳通用电子有限公司 一种车机菜单语言更换方法及存储介质
CN114637499A (zh) * 2022-03-31 2022-06-17 阿里巴巴(中国)有限公司 可视化组件处理方法、装置、设备及介质
CN114637499B (zh) * 2022-03-31 2022-11-29 阿里巴巴(中国)有限公司 可视化组件处理方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
US9342237B2 (en) Automated testing of gesture-based applications
US7093199B2 (en) Design environment to facilitate accessible software
US10275339B2 (en) Accessibility testing software automation tool
US9865262B2 (en) Multi-mode text input
US20150128017A1 (en) Enabling interactive screenshots within collaborative applications
CN111475237A (zh) 菜单处理方法、装置、电子设备及存储介质
US8671389B1 (en) Web application resource manager on the web and localizable components
KR20140126702A (ko) 관련 문서들에 대한 확장 활성화 기법
CN112256990B (zh) 一种图像处理方法及装置、计算机可读存储介质
CN109582317B (zh) 用于调试寄宿应用的方法和装置
CN113704590A (zh) 网页数据获取方法、装置、电子设备及存储介质
CN111552463A (zh) 一种页面跳转方法、装置、计算机设备及存储介质
CN113760763A (zh) 软件测试方法、设备、服务器和系统
CN111767229A (zh) 性能测试方法、装置和设备
US6424978B1 (en) Formatting card-based hypermedia documents by automatic scripting
CN116450202A (zh) 页面配置方法、装置、计算机设备及计算机可读存储介质
CN113887442A (zh) Ocr训练数据生成方法、装置、设备及介质
CN105739717A (zh) 信息输入方法和装置
CN108304169B (zh) 针对html5应用的实现方法、装置和设备
CN112231234B (zh) 跨平台用户界面自动化测试方法、装置、设备和存储介质
CN112148596B (zh) 生成深度学习框架的报错内容的方法、装置
CN113468050A (zh) 基于画布的测试方法、装置、计算机设备及存储介质
CN111309319A (zh) 可继承的局数据动态页面配置方法和装置
CN112863084B (zh) 智能销售终端、智能销售终端的测试方法、装置及系统
CN116108814B (zh) 甘特图处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20231130

Address after: Floor 3, All Season Hotel, No. 31, Jiangsu Road, Chengdong District, Lhasa, Xizang Autonomous Region, 850000

Applicant after: Shilian Power Information Technology Co.,Ltd. Tibet Branch

Address before: 100000 Beijing Dongcheng District Qinglong Hutong 1 Song Hua Building A1103-1113

Applicant before: VISIONVERA INFORMATION TECHNOLOGY Co.,Ltd.