CN111190653A - 实现上下文菜单扩展的方法和计算装置、计算机可读介质 - Google Patents
实现上下文菜单扩展的方法和计算装置、计算机可读介质 Download PDFInfo
- Publication number
- CN111190653A CN111190653A CN201911377538.3A CN201911377538A CN111190653A CN 111190653 A CN111190653 A CN 111190653A CN 201911377538 A CN201911377538 A CN 201911377538A CN 111190653 A CN111190653 A CN 111190653A
- Authority
- CN
- China
- Prior art keywords
- plug
- context menu
- menu
- program
- expansion
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000001960 triggered effect Effects 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 29
- 230000009471 action Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/0482—Interaction with lists of selectable items, e.g. menus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供一种文档程序中实现上下文菜单扩展的方法和计算装置、计算机可读介质。所述方法包括:在文档程序启动时,插件引擎搜索插件程序,并从搜索到的插件程序的插件配置文件中解析出上下文菜单扩展信息;在所述文档程序需要显示一个目标上下文菜单时,所述插件引擎通过上下文菜单扩展信息确定该目标上下文菜单是否存在功能扩展,如果是,则根据对应的上下文菜单扩展信息生成扩展菜单命令并添加到该目标上下文菜单中;显示添加有扩展菜单命令的目标上下文菜单;在该目标上下文菜单的扩展菜单命令被激发时,执行该扩展菜单命令关联的插件程序。这样,不需要额外编写添加扩展功能的命令的程序,可以更简单方便的实现上下文菜单扩展。
Description
技术领域
本发明涉及文档处理领域,尤其涉及一种文档程序中实现上下文菜单扩展的方法和系统、计算机可读介质。
背景技术
办公软件(office)提供了大量的功能用来满足大部分用户的通用需求,但对于一些第三方系统的特定功能还无法完全满足。右键菜单(ContextMenu,又称上下文菜单)集合了对当前选择的区域或对象的相关处理的命令,第三方系统在某些情况下需要提供额外的处理,一般第三方系统不仅需要额外编写一些程序,使用办公软件提供的二次开发接口将特定功能处理的命令添加到某些右键菜单中,并且在办公软件程序初始化时就需要执行上述程序。这样的方案不仅开发时费时费力,使用时也不方便。
因此,有必要提出一种改进的方案来克服上述问题。
发明内容
本发明的目的在于提供一种文档程序中实现上下文菜单扩展的方法和计算装置、计算机可读介质,其不需要额外编写添加扩展功能的命令的程序,可以更简单方便的在文档程序中实现上下文菜单扩展。
根据本发明的另一个方面,本发明提供一种文档程序中实现上下文菜单扩展的方法,所述文档程序中定义了多个上下文菜单,每个上下文菜单具有唯一的身份标识,所述文档程序中包括有插件引擎,一个或多个插件程序与所述文档程序整合在一起,所述插件程序包括插件配置文件,所述插件配置文件包括有上下文菜单扩展信息,所述上下文菜单扩展信息包括扩展的上下文菜单的身份标识和关联的插件程序,所述方法包括:在文档程序启动时,所述插件引擎搜索所述插件程序,并从搜索到的插件程序的插件配置文件中解析出所述上下文菜单扩展信息,将解析出的上下文菜单扩展信息缓存待用;在所述文档程序需要显示一个目标上下文菜单时,所述插件引擎通过缓存的上下文菜单扩展信息确定该目标上下文菜单是否存在功能扩展,如果存在功能扩展,则根据对应的上下文菜单扩展信息生成相应的扩展菜单命令并添加到该目标上下文菜单的原有菜单命令中;显示添加有扩展菜单命令的目标上下文菜单;在该目标上下文菜单的扩展菜单命令被激发时,执行该扩展菜单命令关联的插件程序。
进一步的,所述上下文菜单扩展信息还包括扩展类型和扩展文本,基于所述扩展类型和扩展文本生成相应的扩展菜单命令。
进一步的,所述插件引擎搜索还会从搜索到的插件程序的插件配置文件中解析出其他功能扩展信息。
进一步的,所述插件引擎通过所述目标上下文菜单的身份标识在缓存的上下文菜单扩展信息中查找是否有该目标上下文菜单对应的上下文菜单扩展信息,如果有,则认为该目标上下文菜单存在功能扩展,否则,则认为不存在功能扩展。
进一步的,如果不存在功能扩展,则直接显示该目标上下文菜单。
进一步的,所述文档程序为文字处理程序、表格处理程序或简报处理程序。
进一步的,所述插件引擎定义有上下文菜单扩展点。
进一步的,所述插件引擎在插件目录下搜索所述插件程序,所述插件程序在与所述文档程序整合在一起后会在插件目录下形成插件文件,所述插件文件中包括插件配置文件。
根据本发明的另一个方面,本发明提供一种计算装置,其包括处理器和存储器,所述存储器中存储有程序指令,该程序指令由处理器执行以实现上述文档程序中实现上下文菜单扩展的方法。
根据本发明的另一个方面,本发明提供一种计算机可读介质,其内存储有程序指令,该程序指令被执行以实现上述文档程序中实现上下文菜单扩展的方法。
与现有技术相比,本发明使用插件配置方式对文档程序中的上下文菜单进行功能扩展,不需要额外编写添加扩展功能的命令的程序,更方便地将第三方功能整合到文档程序中。
附图说明
图1为本发明的文档程序中实现上下文菜单扩展的方法在一个实施例中的流程示意图;
图2为现有技术中的上下文菜单的一个示例;和
图3为采用了本发明中的上下文菜单扩展的方法后的上下文菜单的示例。
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如下。
本发明提供一种文档程序中实现上下文菜单扩展的方法,其使用插件配置方式对文档程序中的上下文菜单进行功能扩展,不需要额外编写添加扩展功能的命令的程序,更方便地将第三方功能整合到文档程序中。
本发明中的文档程序可以是文字处理程序,比如word,也可以是表格处理程序,比如excel,还可以是简报处理程序,比如PPT。当然也可以是其他文档处理程序,这里就不再一一列举了。
图1为本发明的文档程序中实现上下文菜单扩展的方法100在一个实施例中的流程示意图。
所述文档程序中定义了多个上下文菜单,每个上下文菜单具有唯一的身份标识(ID)。以文字处理程序为例,其至少定义了文本上下文菜单、图片上下文菜单、表格上下文菜单等,所述身份标识用于识别各个不同的上下文菜单。所述身份标识可以是数值,也可以是文本。所述上下文菜单也可以被称为右键菜单。需要注意的是,由于各个用户使用习惯的不同,鼠标中的左键和右键是可以由用户自己设置的,这里的右键菜单可以是真实的鼠标右键所激发的菜单,也可以是鼠标左键所触发的菜单。
所述文档程序中包括有插件引擎,所述插件引擎定义有上下文菜单扩展点。所述插件引擎也可以被称为插件管理模块。一个或多个插件程序(Plugin)与所述文档程序整合在一起,所述插件程序包括插件配置文件。所述插件配置文件包括有上下文菜单扩展信息,所述上下文菜单扩展信息包括扩展的上下文菜单的身份标识、扩展类型、扩展文本和关联的插件程序。具体的,所述插件程序在与所述文档程序整合在一起后会在插件目录下形成插件文件,所述插件文件中包括插件配置文件。
当然所述插件程序不仅仅可以进行上下文菜单扩展,还可以进行其他功能扩展,因此所述插件程序的插件配置文件还可以包括其他功能扩展信息。
如图1所示,所述方法100包括如下步骤。
步骤110,在文档程序启动时,所述插件引擎搜索所述插件程序,并从搜索到的插件程序的插件配置文件中解析出所述上下文菜单扩展信息,将解析出的上下文菜单扩展信息缓存待用。
具体的,所述插件引擎可以遍历搜索插件目录下插件文件,并从找到的插件配置文件中解析出所述上下文菜单扩展信息以及其他功能扩展信息。
这里解析出的信息只需要缓存待用,此时所述插件程序还未被启动,这样可以降低不必要的计算量。现有的上下文菜单扩展的第三方程序在所述文档程序被启动后会被一并启动,这样极大的浪费了计算资源。
步骤120,所述文档程序接收到显示一个目标上下文菜单的指令。比如,用户点击了鼠标的右键,所述文档程序收到该指令就需要显示一个目标上下文菜单。
步骤130,所述插件引擎通过缓存的上下文菜单扩展信息确定该目标上下文菜单是否存在功能扩展,如果存在功能扩展,所述方法进入步骤140,如果不存在功能扩展,则进入步骤170,直接显示该目标上下文菜单的原有菜单命令。具体的,所述插件引擎通过所述目标上下文菜单的身份标识在缓存的上下文菜单扩展信息中查找是否有该目标上下文菜单对应的上下文菜单扩展信息,如果有,则认为该目标上下文菜单存在功能扩展,否则,则认为不存在功能扩展。
步骤140,根据对应的上下文菜单扩展信息生成相应的扩展菜单命令并添加到该目标上下文菜单的原有菜单命令中。具体的,可以基于上下文菜单扩展信息的所述扩展类型和扩展文本生成相应的扩展菜单命令。
步骤150,显示添加有扩展菜单命令的目标上下文菜单。如图2所示,其为一个未添加有扩展菜单命令的目标上下文菜单的示例,如图3所示,其为已经添加有扩展菜单命令的目标上下文菜单的示例。
步骤160,在该目标上下文菜单的扩展菜单命令被激发时,执行该扩展菜单命令关联的插件程序。这样,在扩展菜单命令不被激发时,不需要执行关联的插件程序,在扩展菜单命令被激发时,才执行关联的插件程序,节省了计算量。使用插件配置方式对文档程序中的上下文菜单进行功能扩展,不需要额外编写添加扩展功能的命令的程序,更方便地将第三方功能整合到文档程序中。
下面为实现上下文菜单扩展的一个插件程序的插件配置文件(实现语言为Java,xml格式)的有关上下文菜单扩展信息的片段:
在上述插件配置文件中,<contextmenu id=”normalText”>表示该插件扩展了id为normalText的下上文菜单,这里normalText表示选择正文中的文本时弹出的下下文菜单。
<menu text=”扩展菜单1”>表示:
定义的是一个可以包含多个子菜单项的菜单(即扩展类型),其中指定了该菜单的文本;
<item text=”扩展功能1”action=”com.company.action.FuncAAction”/>表示定义的是:
可以执行相关命令的菜单项,其中指定了该菜单项的文本(扩展文本)及其关联的程序(Java语言实现时为实现Action接口的类的名称)。
<seperator/>表示定义了一个菜单分隔线。
在不包含插件时,选择正文中文本时弹出的上下文菜单如图2所示,当文档程序应用了上述包含上下文菜单扩展的插件时,选择正文中文本时弹出的上下文键菜单如图3所示,即在原来上下文菜单的后面添加了定义的扩展菜单、扩展菜单项(扩展菜单命令)、扩展菜单分隔线等,在选择菜单时可以显示包含的子菜单项。
根据本发明的另一个方面,本发明提供一种计算机可读介质,其内存储有程序指令,该程序指令由处理器执行以实现上述的文档程序中实现上下文菜单扩展的方法100。
根据本发明的另一个方面,本发明提供一种计算装置,其包括处理器和存储器,所述存储器中存储有程序指令,该程序指令由处理器执行以实现上述的文档程序中实现上下文菜单扩展的方法100。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,除了包含所列的那些要素,而且还可包含没有明确列出的其他要素。
在本文中,所涉及的前、后、上、下等方位词是以附图中零部件位于图中以及零部件相互之间的位置来定义的,只是为了表达技术方案的清楚及方便。应当理解,所述方位词的使用不应限制本申请请求保护的范围。
在不冲突的情况下,本文中上述实施例及实施例中的特征可以相互结合。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种文档程序中实现上下文菜单扩展的方法,其特征在于,所述文档程序中定义了多个上下文菜单,每个上下文菜单具有唯一的身份标识,所述文档程序中包括有插件引擎,一个或多个插件程序与所述文档程序整合在一起,所述插件程序包括插件配置文件,所述插件配置文件包括有上下文菜单扩展信息,所述上下文菜单扩展信息包括扩展的上下文菜单的身份标识和关联的插件程序,
所述方法包括:
在文档程序启动时,所述插件引擎搜索所述插件程序,并从搜索到的插件程序的插件配置文件中解析出所述上下文菜单扩展信息,将解析出的上下文菜单扩展信息缓存待用;
在所述文档程序需要显示一个目标上下文菜单时,所述插件引擎通过缓存的上下文菜单扩展信息确定该目标上下文菜单是否存在功能扩展,如果存在功能扩展,则根据对应的上下文菜单扩展信息生成相应的扩展菜单命令并添加到该目标上下文菜单的原有菜单命令中;
显示添加有扩展菜单命令的目标上下文菜单;
在该目标上下文菜单的扩展菜单命令被激发时,执行该扩展菜单命令关联的插件程序。
2.如权利要求1所述的方法,其特征在于,所述上下文菜单扩展信息还包括扩展类型和扩展文本,基于所述扩展类型和扩展文本生成相应的扩展菜单命令。
3.如权利要求1所述的方法,其特征在于,所述插件引擎搜索还会从搜索到的插件程序的插件配置文件中解析出其他功能扩展信息。
4.如权利要求1所述的方法,其特征在于,所述插件引擎通过所述目标上下文菜单的身份标识在缓存的上下文菜单扩展信息中查找是否有该目标上下文菜单对应的上下文菜单扩展信息,如果有,则认为该目标上下文菜单存在功能扩展,否则,则认为不存在功能扩展。
5.如权利要求1所述的方法,其特征在于,如果不存在功能扩展,则直接显示该目标上下文菜单。
6.如权利要求1所述的方法,其特征在于,所述文档程序为文字处理程序、表格处理程序或简报处理程序。
7.如权利要求1所述的方法,其特征在于,所述插件引擎定义有上下文菜单扩展点。
8.如权利要求7所述的方法,其特征在于,所述插件引擎在插件目录下搜索所述插件程序,所述插件程序在与所述文档程序整合在一起后会在插件目录下形成插件文件,所述插件文件中包括插件配置文件。
9.一种计算装置,其包括处理器和存储器,所述存储器中存储有程序指令,该程序指令由处理器执行以实现如权利要求1-8任一所述的文档程序中实现上下文菜单扩展的方法。
10.一种计算机可读介质,其内存储有程序指令,该程序指令被执行以实现如权利要求1-8任一所述的文档程序中实现上下文菜单扩展的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377538.3A CN111190653A (zh) | 2019-12-27 | 2019-12-27 | 实现上下文菜单扩展的方法和计算装置、计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377538.3A CN111190653A (zh) | 2019-12-27 | 2019-12-27 | 实现上下文菜单扩展的方法和计算装置、计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111190653A true CN111190653A (zh) | 2020-05-22 |
Family
ID=70707707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911377538.3A Pending CN111190653A (zh) | 2019-12-27 | 2019-12-27 | 实现上下文菜单扩展的方法和计算装置、计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111190653A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114297155A (zh) * | 2021-12-23 | 2022-04-08 | 珠海豹好玩科技有限公司 | 一种右键菜单展示方法及装置、电子设备、存储介质 |
CN114610421A (zh) * | 2020-12-08 | 2022-06-10 | 永中软件股份有限公司 | 一种Office横屏界面设计方法及移动终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101243439A (zh) * | 2005-08-30 | 2008-08-13 | 微软公司 | 用于用户界面的基于标记的可扩展性 |
CN102436344A (zh) * | 2010-10-28 | 2012-05-02 | 微软公司 | 上下文菜单 |
-
2019
- 2019-12-27 CN CN201911377538.3A patent/CN111190653A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101243439A (zh) * | 2005-08-30 | 2008-08-13 | 微软公司 | 用于用户界面的基于标记的可扩展性 |
CN102436344A (zh) * | 2010-10-28 | 2012-05-02 | 微软公司 | 上下文菜单 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114610421A (zh) * | 2020-12-08 | 2022-06-10 | 永中软件股份有限公司 | 一种Office横屏界面设计方法及移动终端 |
CN114297155A (zh) * | 2021-12-23 | 2022-04-08 | 珠海豹好玩科技有限公司 | 一种右键菜单展示方法及装置、电子设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102436987B1 (ko) | 웹페이지 콘텐츠를 추출하기 위한 방법 및 단말 장치 | |
US20190251143A1 (en) | Web page rendering method and related device | |
US9626079B2 (en) | System and method for browsing tabbed-heterogeneous windows | |
JP4420968B2 (ja) | コマンディングのために方法及びコンピュータ可読媒体 | |
AU2018317074B2 (en) | Page updating method and device | |
US20070244691A1 (en) | Translation of user interface text strings | |
US9645717B2 (en) | Managing a selection mode for presented content | |
CN108027721B (zh) | 用于使用控件来配置通用程序的技术 | |
IL188663A (en) | Web page rendering priority mechanism | |
JP2017139006A (ja) | 関連する文書のための拡張機能アクティブ化 | |
US20210248622A1 (en) | Methods, apparatuses, and devices for generating digital document of title | |
JP6379654B2 (ja) | 処理実行プログラム、処理実行方法、及び情報処理装置 | |
JP2019520625A (ja) | ヒューマンコンピュータインタラクション方法およびその装置 | |
TW201826109A (zh) | 頁面展示方法及裝置 | |
CN111190653A (zh) | 实现上下文菜单扩展的方法和计算装置、计算机可读介质 | |
CN113849092A (zh) | 内容分享方法、装置和电子设备 | |
CN113590123A (zh) | Wpf界面切换方法、装置、计算机设备及存储介质 | |
CN113568608A (zh) | 一种组件信息的展示方法、装置、设备及存储介质 | |
EP1909170A1 (en) | Method and system for automatically generating a communication interface | |
Bandelloni et al. | Dynamic generation of web migratory interfaces | |
US20240214340A1 (en) | Methods, apparatuses, systems and storage media for processing a link in a conversation | |
WO2022228294A1 (zh) | 搜索方法、装置、电子设备及可读存储介质 | |
US5812129A (en) | Method and system for accessing functions of a user interface environment from processes running outside of the user interface environment | |
US20130145249A1 (en) | Smart annotation anchoring process | |
US20070124686A1 (en) | Locating graphical elements for an object |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200522 |