一种拼接墙右键菜单控制应用的方法及系统与流程

文档序号:20679945发布日期:2020-05-08 18:17阅读:136来源:国知局
一种拼接墙右键菜单控制应用的方法及系统与流程

本发明涉及大屏幕拼接墙系统领域,更具体地,涉及一种拼接墙右键菜单控制应用的方法及系统。



背景技术:

随着各行业对监控需求的日益增长及当前可视化信息技术的快速发展,大屏幕拼接墙系统已经逐渐在日常工作中配置使用。目前的大屏幕拼接墙系统搭配使用的处理器一般是纯硬件架构或者pc架构,对于需要接入其他厂家摄像头设备来进行监控及管理的应用场景,pc架构的拼接墙系统在硬件成本和功能扩展方面更为适合。

pc架构的拼接墙系统一般安装的是windows操作系统,由于windows操作系统涉及到较多的桌面操作,当处理器搭载大屏幕拼接墙时,尤其是墙体较大时,打开一个应用,需要移动鼠标较长时间才能找到该应用对应的窗口,而将窗口移动到指定位置显示的操作就更加麻烦,此外还有一些对于操作系统的重启、关机操作,需要使用鼠标找到对应的菜单项或者用键盘执行对应的指令,操作繁琐且极易出错。

目前基于pc架构的拼接墙处理器系统中,要定位并移动打开的应用窗口,一般都是通过windows的快捷键来实现的,具体步骤如下:

(1)同时按住alt和tab键,在弹出来的消息框中会显示当前所有打开的应用窗口,此时按住alt键,松开tab键,通过“上下左右”四个方向键来调出想要显示的窗口,该窗口会被置顶显示;

(2)同时按下alt、space和“m”键后松开,再按一个方向键后松开,移动鼠标,即可将步骤(1)中选择的应用窗口移到方便操作的位置。

对于处理器的一些重启、关机操作,则通过在开始菜单中找到“重启”或“关机”的菜单选项点击执行,或是通过按alt+f4快捷键等方式在弹出的消息框上选择对应操作。

综上所述,对于基于pc架构的拼接墙处理器系统,目前使用的windows快捷键搭配鼠标来定位、移动系统桌面上的应用窗口及操作系统的重启、关机操作的方式,操作极为不便且易出现失误,若有些桌面应用窗口距离使用者视觉范围较远,则需要使用者控制鼠标移动较长时间才能将该窗口移至视线范围内,这对日常使用和维护都造成了较大影响。



技术实现要素:

本发明旨在克服上述现有技术的至少一种缺陷,提供一种拼接墙右键菜单控制应用的方法及系统,简化了使用者的操作过程,提高了日常工作和维护的效率,提升使用者的体验。

本发明采取的技术方案是,

一种拼接墙右键菜单控制应用的方法,将com组件注册到操作系统中,包括以下步骤:com组件在鼠标右键被点击时,自动提取操作系统中处于已打开状态的应用程序窗口的最外层父窗口句柄、坐标和窗口标题放入应用窗口列表中,并将所述应用程序窗口的窗口标题插入右键菜单形成子菜单项;

com组件在子菜单项被选中时,根据选中的子菜单项将对应的应用窗口句柄发送给后台控制程序,以使后台控制程序在鼠标右键被点击时获取当前鼠标的定位坐标后,根据定位坐标和应用窗口句柄调用相应的windowsapi对所述应用窗口进行移动、置顶处理。

本发明使用windowsshell扩展技术,将支持操作系统桌面上下文菜单处理的com组件注册到操作系统中,当鼠标右键被点击时,com组件自动检测到当前操作系统桌面上处于已打开状态的所有应用程序窗口,并对所有应用程序窗口进行筛选,保留最外层父窗口,获取其句柄、坐标和窗口标题等信息,将句柄、坐标和窗口标题放入应用窗口列表中,然后依次将各个应用程序窗口标题插入新增的右键菜单中作为子菜单项;当子菜单项中的程序窗口标题被选中时,com组件将对应的应用程序句柄发送给后台控制程序,后台控制程序根据应用程序句柄调用windowsapi对应用窗口移动到鼠标当前坐标位置,同时后台控制程序获取鼠标当前停留的定位坐标,调用windowsapi重新设置窗口位置,将鼠标当前的定位坐标设置为应用窗口左上角坐标,并且保持窗口原有的宽度和高度不变,将窗口进行置顶处理,此时的应用窗口便在当前鼠标周围,便于操作。本发明一种拼接墙右键菜单控制应用的方法,在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,实现直接控制操作系统定位移动、置顶等功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

一种拼接墙右键菜单控制应用的方法,将com组件注册到操作系统中,包括以下步骤:

com组件在鼠标右键被点击时,将重启和关机插入右键菜单中形成子菜单项;

com组件在重启或者关机相对应的子菜单项被选中时,根据选中的子菜单项将对应的句柄发送给后台控制程序,以使后台控制程序直接调用相应的windowsapi对操作系统桌面进行重启或者关机处理。

本发明使用windowsshell扩展技术,将支持操作系统桌面上下文菜单处理的com组件注册到操作系统中,当鼠标右键被点击时,com组件将重启和关机操作插入新增的右键菜单作为子菜单项;当用户点击选中重启或者关机相应的子菜单项时,com组件将子菜单项的句柄发送给后台控制程序,后台控制程序根据相应操作的句柄调用相应的windowsapi对操作系统进行重启或者关机处理。本发明一种拼接墙右键菜单控制应用的方法,在pc架构的拼接墙系统桌面上扩展桌面右键菜单,将重启和关机操作加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,实现直接控制操作系统重启或者关机的功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

一种拼接墙右键菜单控制应用的系统,包括com组件和后台控制模块,将com组件注册到操作系统中,

所述com组件在鼠标右键被点击时,自动提取操作系统中处于已打开状态的应用程序窗口的最外层父窗口句柄、坐标和窗口标题并放入应用窗口列表中,将所述应用程序窗口的窗口标题插入右键菜单并形成子菜单项;

所述后台控制模块在子菜单项被选中时,接收选中的子菜单项对应的应用窗口句柄,并在鼠标右键被点击时获取当前鼠标的定位坐标,根据定位坐标和应用窗口句柄调用相应的windowsapi对所述应用窗口进行移动、置顶处理。

本发明通过com组件和后台控制模块实现拼接墙右键菜单控制应用:使用windowsshell扩展技术,将支持操作系统桌面上下文菜单处理的com组件注册到操作系统中,当鼠标右键被点击时,com组件自动检测到当前操作系统桌面上处于已打开状态的所有应用程序窗口,并对所有应用程序窗口进行筛选,保留最外层父窗口,获取其句柄、坐标和窗口标题等信息,将句柄、坐标和窗口标题放入应用窗口列表中,然后依次将各个应用程序窗口标题插入新增的右键菜单中作为子菜单项;当子菜单项中的程序窗口标题被选中时,后台控制模块接收对应的应用程序句柄,并根据应用程序句柄调用windowsapi对应用窗口移动到当前鼠标定位坐标位置,同时后台控制模块获取鼠标当前停留的定位坐标,调用windowsapi重新设置窗口位置,将鼠标当前的定位坐标设置为应用窗口左上角坐标,并且保持窗口原有的宽度和高度不变,将窗口进行置顶处理,此时的应用窗口便在当前鼠标周围,便于操作。本发明一种拼接墙右键菜单控制应用的系统,在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,实现直接控制操作系统定位移动、置顶等功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

一种拼接墙右键菜单控制应用的系统,包括com组件和后台控制模块,将com组件注册到操作系统中,

所述com组件在鼠标右键被点击时,将重启和关机插入右键菜单中作为子菜单项;

所述后台控制模块在重启或者关机相对应的子菜单项被选中时,接收选中的子菜单项对应的句柄,直接调用相应的windowsapi对操作系统桌面进行重启或者关机处理。

本发明通过com组件和后台控制模块实现拼接墙右键菜单控制应用:使用windowsshell扩展技术,将支持操作系统桌面上下文菜单处理的com组件注册到操作系统中,当鼠标右键被点击时,com组件将重启和关机操作插入新增的右键菜单作为子菜单项;当用户点击选中重启或者关机相应的子菜单项时,com组件将子菜单项的句柄发送给后台控制模块,后台控制模块接收相应操作的句柄后调用相应的windowsapi对操作系统进行重启或者关机处理。本发明一种拼接墙右键菜单控制应用的系统,在pc架构的拼接墙系统桌面上扩展桌面右键菜单,将重启和关机操作加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,实现直接控制操作系统重启或者关机的功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

与现有技术相比,本发明的有益效果为:本发明一种拼接墙右键菜单控制应用的方法及系统,在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,实现直接控制操作系统定位移动、置顶、重启和关机等功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

附图说明

图1为com组件的具体注册过程。

图2为本发明实施例一种拼接墙右键菜单控制应用的方法的流程图。

图3为com组件与后台控制程序的交互图。

图4为本发明实施例另一种拼接墙右键菜单控制应用的方法的流程图。

图5为com组件与后台控制程序的另一种交互图

图6为本发明实施例一种拼接墙右键菜单控制应用的系统的结构图。

图7为com组件与后台控制模块的交互图。

图8为com组件与后台控制模块的另一种交互图

具体实施方式

本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

本发明实施例使用windowsshell扩展技术,将支持操作系统桌面上下文菜单处理的com组件注册到操作系统中,从而达到使用者点击添加的右键菜单选项时后台控制程序自动执行相应功能的效果,其中具体注册过程如下:

如图1所示为com组件的具体注册过程,首先创建一个com组件,在com组件中新增一个vtronmenu类,该类必须继承ishellextinit和icontextmenu两个基类;其次实现vtronmenu类的四个接口,分别在vtronmenu类中声明并定义四个接口为initialize、querycontextmenu、invokecommand、getcommandstring,其中重点实现querycontextmenu和invokecommand两个接口,在querycontextmenu接口中添加交互的上下文菜单,实现添加执行各种操作的各级菜单选项的功能,在invokecommand接口中实现菜单选项功能,使得每个子菜单项被使用者点击选中后能够执行com组件的交互;然后在.rgs后缀的文件中添加当前com组件在windows系统注册表中的注册位置,此处应设置为hkey_classes_root\directory\background\shellex\contextmenuhandlers的子项,才能加入到桌面右键上下文菜单中;最后使用bat文件添加注册该com组件的命令,实现对com组件的注册,以便直接安装。

实施例1

图2为本发明实施例一种拼接墙右键菜单控制应用的方法的流程图,其中将com组件注册到操作系统中,其方法包括以下步骤:

s1、com组件在鼠标右键被点击时,自动提取操作系统中处于已打开状态的应用程序窗口的最外层父窗口句柄、坐标和窗口标题放入应用窗口列表中,并将所述应用程序窗口的窗口标题插入右键菜单形成子菜单项;

s2、com组件在子菜单项被选中时,根据选中的子菜单项将对应的应用窗口句柄发送给后台控制程序,以使后台控制程序在鼠标右键被点击时获取当前鼠标的定位坐标后,根据定位坐标和应用窗口句柄调用相应的windowsapi对所述应用窗口进行移动、置顶处理。

优选地,本发明实施例中还包括步骤:

s11、com组件在鼠标右键被点击时,将重启和关机插入右键菜单中形成子菜单项;

s22、com组件在重启或者关机相对应的子菜单项被选中时,根据选中的子菜单项将对应的句柄发送给后台控制程序,以使后台控制程序直接调用相应的windowsapi对操作系统桌面进行重启或者关机处理。

优选地,本发明实施例中所述获取当前鼠标的定位坐标,具体包括:后台控制程序在鼠标右键被点击时获取当前鼠标的定位坐标后,根据鼠标定位坐标调用相应的windowsapi将鼠标定位坐标设置为应用窗口左上角坐标。

优选地,本发明实施例中所述调用相应的windowsapi对所述应用窗口进行置顶处理,具体包括:调用相应的windowsapi将鼠标定位坐标设置为应用窗口左上角坐标,并保持应用窗口原有的宽高不变,设置应用窗口置顶。

更进一步地说,本发明实施例中所述方法的具体实施过程为com组件与后台控制程序的交互过程,具体如下:

如图3所示为com组件与后台控制程序的交互图,后台控制程序作为服务程序开机自动运行,com组件在使用者点击鼠标右键时建立与后台控制程序的tcp连接,并插入执行系统重启、关机功能的子菜单项;com组件中枚举当前桌面上处于已打开状态的所有应用窗口,并对所有打开的应用窗口进行筛选,只保留最顶层父窗口,获取其窗口句柄、坐标和窗口标题等信息,存入应用列表中;然后将应用列表中保存的窗口标题依次插入右键菜单中,设置为子菜单项;当使用者鼠标点击被选中的子菜单项时,com组件向后台控制程序发送相应消息;后台控制程序根据消息参数判断执行何种操作,若是重启、关机操作,则调用相应的windowsapi直接实现该系统操作,若是定位移动指定的应用窗口,后台控制程序接收相应应用窗口句柄并根据句柄执行移动、置顶操作,此时后台控制程序根据鼠标当前的定位坐标(x,y),调用windowsapi将窗口左上角坐标作为设置为(x,y),并保持窗口原有的宽度和高度不变,将窗口置顶到左上角坐标位置,此时应用窗口便在鼠标周围,使用者可以在视线范围内使用鼠标对应用窗口进行相应的移动操作。

本发明实施例通过多次实践验证,结果表明该方法能够准确快速地定位移动选定的应用窗口到当前鼠标定位的位置,本发明实施例在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,通过选择子菜单项可实现对处理器的重启、关机、定位移动应用窗口等操作,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

实施例2

图4为本发明实施例另一种拼接墙右键菜单控制应用的方法的流程图,其中将com组件注册到操作系统中,其方法包括以下步骤:

s1’、com组件在鼠标右键被点击时,将重启和开机插入右键菜单中形成子菜单项;

s2’、com组件在重启或者开机相对应的子菜单项被选中时,根据选中的子菜单项将对应的句柄发送给后台控制程序,以使后台控制程序直接调用相应的windowsapi对操作系统桌面进行重启或者开机处理。

更进一步地说,本发明实施例中所述方法的具体实施过程为com组件与后台控制程序的交互过程,具体如下:

如图5所示为com组件与后台控制程序的另一种交互图,后台控制程序作为服务程序开机自动运行,com组件在使用者点击鼠标右键时建立与后台控制程序的tcp连接,同时插入执行操作系统重启、关机的功能项并形成子菜单项,当使用者鼠标点击选中重启或者关机的子菜单项时,com组件向后台控制程序发送相对应的操作指令;后台控制程序接收重启或者关机的指令后并根据指令执行操作系统重启或关机操作。

本发明实施例通过多次实践验证,结果表明该方法能够准确快速地对操作系统进行重启和关机功能,本发明实施例在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入重启、关机选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中重启或关机的子菜单项,实现直接控制操作系统的重启、关机功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

实施例3

图6为本发明实施例一种拼接墙右键菜单控制应用的系统的结构图,包括com组件和后台控制模块,将com组件注册到操作系统中,

所述com组件在鼠标右键被点击时,自动提取操作系统中处于已打开状态的应用程序窗口的最外层父窗口句柄、坐标和窗口标题并放入应用窗口列表中,将所述应用程序窗口的窗口标题插入右键菜单并形成子菜单项;

所述后台控制模块在子菜单项被选中时,接收选中的子菜单项对应的应用窗口句柄,并在鼠标右键被点击时获取当前鼠标的定位坐标,根据定位坐标和应用窗口句柄调用相应的windowsapi对所述应用窗口进行移动、置顶处理。

优选地,本发明实施例中还包括:

所述com组件在鼠标右键被点击时,将重启和关机插入右键菜单中形成子菜单项;

所述后台控制模块在重启或者关机相对应的子菜单项被选中时,接收选中的子菜单项对应的句柄,直接调用相应的windowsapi对操作系统桌面进行重启或者关机处理。

优选地,本发明实施例中所述获取当前鼠标的定位坐标,具体包括:后台控制程序在鼠标右键被点击时获取当前鼠标的定位坐标后,根据鼠标定位坐标调用相应的windowsapi将鼠标定位坐标设置为应用窗口左上角坐标。

优选地,本发明实施例中所述调用相应的windowsapi对所述应用窗口进行置顶处理,具体包括:调用相应的windowsapi将鼠标定位坐标设置为应用窗口左上角坐标,并保持应用窗口原有的宽高不变,设置应用窗口置顶。

更进一步地说,本发明实施例中所述系统的具体实施过程为com组件与后台控制模块的交互过程,具体过程如下:

如图7所示为com组件与后台控制模块的交互图,后台控制模块中的后台控制程序作为服务程序开机自动运行,com组件在使用者点击鼠标右键时建立与后台控制模块的tcp连接并插入执行系统重启、关机功能的子菜单项;com组件中枚举当前桌面上处于已打开状态的所有应用窗口,并对所有打开的应用窗口进行筛选,只保留最顶层父窗口,获取其窗口句柄、坐标和窗口标题等信息,存入应用列表中;然后将应用列表中保存的窗口标题依次插入右键菜单中,设置为子菜单项;当使用者鼠标点击被选中的子菜单项时,com组件向后台控制模块发送相应消息;后台控制模块根据消息参数判断执行何种操作,若是重启、关机操作,则调用相应的windowsapi直接实现该系统操作,若是定位移动指定的应用窗口,此时后台控制模块根据鼠标当前的定位坐标(x,y),调用windowsapi将窗口左上角坐标作为设置为(x,y),并保持窗口原有的宽度和高度不变,将窗口置顶到左上角坐标位置,此时应用窗口便在鼠标周围,使用者可以在视线范围内使用鼠标对应用窗口进行相应的移动操作。

本发明实施例通过多次实践验证,结果表明采用该系统能够准确快速地定位移动选定的应用窗口到当前鼠标定位的位置,本发明实施例在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入控制选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中指定操作,通过选择子菜单项可实现对处理器的重启、关机、定位移动应用窗口等操作,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

实施例4

本发明实施例另一种拼接墙右键菜单控制应用的系统,包括com组件和后台控制模块,将com组件注册到操作系统中,

所述com组件在鼠标右键被点击时,将重启和关机插入右键菜单中形成子菜单项;

所述后台控制模块在重启或者关机相对应的子菜单项被选中时,接收选中的子菜单项对应的句柄,直接调用相应的windowsapi对操作系统桌面进行重启或者关机处理。

更进一步地说,本发明实施例中所述系统的具体实施过程为com组件与后台控制模块的交互过程,具体过程如下:

如图8所示为com组件与后台控制模块的另一种交互图,后台控制模块中的后台控制程序作为服务程序开机自动运行,com组件在使用者点击鼠标右键时建立与后台控制模块的tcp连接,同时插入执行操作系统重启、关机的功能项并形成子菜单项,当使用者鼠标点击选中重启或者关机的子菜单项时,com组件向后台控制模块发送相对应的操作指令;后台控制模块接收重启或者关机的指令后并根据指令执行操作系统重启或关机操作。

本发明实施例通过多次实践验证,结果表明该系统能够准确快速地对操作系统进行重启和关机功能,本发明实施例在pc架构的拼接墙系统桌面上扩展桌面右键菜单,在菜单中加入重启、关机选项子菜单,通过鼠标右键点击系统桌面,在弹出的右键菜单选项中选中重启或关机的子菜单项,实现直接控制操作系统的重启、关机功能,从而简化使用者的日常操作,显著提高其工作效率,提升使用者的体验。

显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1