根据用户手势进行控制的方法、装置和客户端与流程

文档序号:12013365阅读:227来源:国知局
根据用户手势进行控制的方法、装置和客户端与流程
本发明涉及计算机技术领域,尤其涉及一种根据用户手势进行控制的方法、装置和客户端。

背景技术:
通过浏览器浏览页面已成了信息时代人们生活的重要部分,但是,传统浏览页面的方式被动呆板,用户主要通过鼠标或触摸板(例如,笔记本电脑的触摸板)等点击相应的页面链接,或在地址栏中输入网址浏览自己感兴趣的页面。另外,用户按住鼠标左键或触摸板拉动页面侧面的滚动条使页面向上或向下滚动,以实现向上或向下翻页,但是,通常页面上的滚动条较窄,不方便控制,用户使用不方便。此外,当需要在后台运行的页面及当前活动的页面之间切换时,用户需使用鼠标或触摸板点击后台运行的页面,以将后台运行的页面切换成当前活动的页面,切换过程比较死板,容易引起误操作,用户体验差。针对上述通过鼠标点击或触摸板触摸浏览页面时被动呆板、用户体验差的问题,目前,提出一种使用鼠标手势进行操作的方法,无须使用鼠标点击确认,只要利用鼠标完成特定的手势即可达到操作效果。目前存在的问题是,使用鼠标手势进行操作时影响浏览器对动态对象的播放和渲染,严重影响浏览器中动态对象(如视频、flash动画)的播放效果,此外,还容易引发误操作。

技术实现要素:
本发明旨在至少解决上述技术问题之一。为此,本发明的第一个目的在于提出一种根据用户手势进行控制的方法。该方法不影响应用程序对动态对象的播放和渲染,提升用户体验。本发明的第二个目的在于提出一种根据用户手势进行控制的装置。本发明的第三个目的在于提出一种客户端。为了实现上述目的,本发明第一方面实施例的根据用户手势进行控制的方法,应用于浏览器领域,包括以下步骤:检测是否有用户手势输入;在检测到有用户手势输入时,创建覆盖当前窗口的覆盖图层;获取所述用户手势在所述覆盖图层中的移动轨迹;以及根据所述移动轨迹对所述当前窗口进行控制。根据本发明实施例的根据用户手势进行控制的方法,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。为了实现上述目的,本发明第二方面实施例的根据用户手势进行控制的装置,应用于浏览器领域,包括:监测模块,用于检测是否有用户手势输入;覆盖图层管理模块,用于在检测到有用户手势输入时,创建覆盖当前窗口的覆盖图层;获取模块,用于获取所述用户手势在所述覆盖图层中的移动轨迹;以及当前窗口控制模块,用于根据所述移动轨迹对所述当前窗口进行控制。根据本发明实施例的根据用户手势进行控制的装置,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。为了实现上述目的,本发明第三方面实施例的客户端,包括:外壳,屏幕,处理器,处理器和电路板;所述屏幕安置在所述外壳上,所述电路板安置在所述外壳围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:检测是否有用户手势输入;在检测到有用户手势输入时,创建覆盖当前窗口的覆盖图层;获取所述用户手势在所述覆盖图层中的移动轨迹;以及根据所述移动轨迹对所述当前窗口进行控制。根据本发明实施例的客户端,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,图1是根据本发明一个实施例的根据用户手势进行控制的方法的流程图;图2是根据本发明另一个实施例的根据用户手势进行控制的方法的流程图;图3是根据本发明又一个实施例的根据用户手势进行控制的方法的流程图;图4(a)是本发明实施例的将平面空间分成八个区域的一种示例性示意图;图4(b)是本发明实施例的鼠标的移动轨迹的一种示例性示意图;图5是根据本发明一个实施例的根据用户手势进行控制的装置的结构框图;图6是根据本发明另一个实施例的根据用户手势进行控制的装置的结构框图;以及图7是根据本发明又一个实施例的根据用户手势进行控制的装置的结构框图。具体实施方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。下面参考附图描述本发明实施例的根据用户手势进行控制的方法、装置和客户端。在应用程序例如浏览器中使用鼠标手势进行操作时,即用鼠标“画”出特定的移动轨迹以执行相应的命令操作,需要在应用程序的页面上描绘鼠标的移动轨迹。在描绘移动轨迹时,是直接在当前页面上进行截屏,把屏幕截住并描绘出移动轨迹,该方法影响应用程序对动态对象(如flash动画)的播放和渲染,如果应用程序中有flash,截屏时将导致flash变为静态,即移动轨迹周围的图像会停止播放。实际上,绘制鼠标的移动轨迹时,对屏幕进行截屏,绘制移动轨迹的图层就是当前动态flash播放的图层,绘制时该flash播放图层中的鼠标的移动轨迹周围的图像被定格,或者出现闪动情形,严重影响播放效果。另外,在观看视频时,使用鼠标右键绘制移动轨迹时容易引起误操作,会触发对视频的操作,即使能够重新还原,则误操作期间的视频也可能会错过。为此,提出一种根据用户手势进行控制的方法,绘制鼠标的移动轨迹时重新设置一个分层,鼠标手势在单独的窗口上操作并绘制。图1是根据本发明一个实施例的根据用户手势进行控制的方法的流程图。如图1所示,根据用户手势进行控制的方法包括以下步骤。S101,监测是否有用户手势输入。具体地,在本发明的一个实施例中,用户手势通过鼠标或者触摸板或者触控显示屏幕输入,用户手势是指用户通过鼠标或者触摸板或者触控显示屏幕输入的以控制应用程序完成相应操作时的一系列动作,例如,在PC(personalcomputer,个人计算机)上使用鼠标输入用户手势,或者在个人笔记本上通过鼠标或在触摸板上输入用户手势,或者在移动终端上通过触控显示屏幕上输入用户手势,总之,用户可以使用任意输入设备输入用户手势,又如,用户手势可以是按下鼠标的某个键画出的一个移动轨迹,也可以是用户在触摸板画出的一个移动轨迹等。S102,在检测到有用户输入手势时,创建覆盖当前窗口的覆盖图层。覆盖图层在本发明的一个实施例中,覆盖图层相对于当前窗口透明。其中,相对于当前窗口透明可为全透明,即用户在应用程序中看到的只有当前窗口,覆盖图层用户看不见但是实际存在,由此,可使得覆盖图层不影响当前窗口的显示,提升用户体验;或者,相对于当前窗口透明可为按比例透明,例如半透明,用户还可以设置相应的透明比例,由此,给予用户提示,提示用户是在覆盖图层中进行鼠标手势操作,提升用户体验。在本发明的一个实施例中,覆盖图层的大小和当前窗口相同。应当理解的是,覆盖图层的大小还可根据需要设定,例如,可设置小于当前窗口。S103,获取用户手势在覆盖图层中的移动轨迹。S104,根据移动轨迹对当前窗口进行控制。例如,根据移动轨迹可实现应用程序的当前窗口的相关命令,如,前进、后退、刷新等。在本发明的一个实施例中,还包括以下步骤:在覆盖图层中显示移动轨迹。其中,在覆盖图层中显示移动轨迹可直观、形象地展示用户执行的手势,提升用户体验。根据本发明实施例的根据用户手势进行控制的方法,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。当检测到有用户手势输入时,还需要对用户手势进行筛选。图2是根据本发明另一个实施例的根据用户手势进行控制的方法的流程图。具体地,如图2所示,根据用户手势进行控制的方法包括以下步骤。S201,监测是否有用户手势输入。S202,在检测到有用户输入手势时,判断检测到的用户手势是否符合预设手势。S203,如果符合预设手势,则创建覆盖当前窗口的覆盖图层。其中,预设手势与输入设备相对应。例如,如果是使用鼠标输入用户手势,则判断输入的用户手势是否为按下预设的鼠标键,例如是否为右键等,如果按下鼠标右键,则创建覆盖当前窗口的覆盖图层,或者判断输入的用户手势是否为按下预设的鼠标键滑动预设轨迹。又如,如果在触摸板或者触摸显示屏幕上预先定义预设手势,如果用户输入的符合定义的预设手势,则创建覆盖当前窗口的覆盖图层。应当理解,预设手势主要起到创建覆盖当前窗口的覆盖图层的作用,防止误操作。应当理解,还可以通过其他方式启动创建覆盖当前窗口的覆盖图层,例如,按下键盘的某些功能键也创建覆盖当前窗口的覆盖图层,又如,设置成启动应用程序时即发送启动指令等。S204,获取用户手势在覆盖图层中的移动轨迹。S205,根据移动轨迹对当前窗口进行控制。S206,如果不符合预设手势,则根据用户手势对当前窗口进行控制。在本发明的一个实施例中,还包括以下步骤:在覆盖图层中显示移动轨迹。其中,在覆盖图层中显示移动轨迹可直观、形象地展示用户执行的手势,提升用户体验。根据本发明实施例的根据用户手势进行控制的方法,通过预设手势对用户手势进行筛选,符合预设手势时才可创建覆盖当前窗口的覆盖图层的作用,防止误操作。在本发明的一个实施例中,覆盖图层通过浏览器主进程生成,且移动轨迹通过浏览器主进程在覆盖图层中绘制。在本发明的一个实施例中,浏览器主进程通过当前窗口的窗口进程获取移动轨迹。具体地,首先浏览器主进程接收启动指令,之后浏览器主进程根据用户输入的用户手势生成覆盖图层,在覆盖图层中执行鼠标或者手势滑动操作时,覆盖图层不接收鼠标操作或手势滑动消息,鼠标操作或手势滑动消息直接透过去由覆盖图层所覆盖的当前窗口接收,当前窗口接收鼠标操作或手势滑动消息之后,将该鼠标操作或手势滑动消息发送至浏览器主进程,浏览器主进程获取对应的移动轨迹,并将移动轨迹绘制在覆盖图层中。由此,通过当前窗口接收鼠标操作或手势滑动消息,覆盖图层不接收消息,鼠标或手势滑动消息直接透过去由覆盖图层下的当前窗口接收,然后浏览器主进程再根据鼠标或手势滑动操作在覆盖图层中显示移动轨迹,可以避免在正在播放的视频、flash等动态对象上画线时出现不断置顶或者闪屏的现象,提升用户体验;此外,移动轨迹可在覆盖图层中平滑地呈现出来,不会出现闪烁现象。更具体地,为了创建覆盖图层,在创建CreateWindowEx(一个微软窗口函数,用于创建一个具有扩展风格的重叠式窗口、弹出式窗口或子窗口)的时候指定扩展窗体风格WS_EX_LAYERED(微软窗口扩展属性,实现窗口透明化),或在创建覆盖图层后使用SetWindowLong(一个微软窗口函数,用于改变指定窗口的属性)函数设置WS_EX_LAYERED。在CreateWindowEx调用后,覆盖图层不会马上是可见的,需要覆盖图层调用SetLayeredWindowAttributes(一个微软窗口函数,用于设置透明窗口)或UpdateLayeredWindow函数(一个微软窗口函数,用于实现透明窗口)。覆盖图层是透明的,不接收绘画onpaint消息,鼠标或手势滑动消息直接透过去由所覆盖的浏览器的当前窗口接收。在上述任一项所述的实施例中,需要对用户手势进行判断:判断用户手势为点击操作或移动轨迹。在本发明的一个实施例中,检测是否有用户手势输入具体包括以下步骤:获取用户手势的移动距离;判断移动距离是否大于预设移动距离;以及如果大于预设移动距离,则确定有用户手势输入。具体地,预设移动距离可为用户设置或者系统默认的最小移动距离,从用户按下手势的位置坐标算起,捕获用户手势的移动距离(例如,可以跟踪鼠标位置等),当移动距离大于预设移动距离时,则认为是移动操作,否则认为是点击操作。由此可以防止误操作。图3是根据本发明又一个实施例的根据鼠标手势进行控制的方法的流程图。根据移动轨迹可获得对应的控制命令,并根据控制命令对当前窗口进行控制,具体地,如图3所示,根据鼠标手势进行控制的方法包括以下步骤。S301,监测是否有用户手势输入。S302,在检测到有用户输入手势时,判断检测到的用户手势是否符合预设手势。S303,如果符合预设手势,则创建覆盖当前窗口的覆盖图层。S304,获取用户手势在覆盖图层中的移动轨迹。S305,根据移动轨迹对当前窗口进行控制,并在覆盖图层图层中显示移动轨迹。S306,根据移动轨迹获得对应的控制命令,并根据控制命令对当前窗口进行控制。S307,如果不符合预设手势,则根据用户手势对当前窗口进行控制。具体地,首先,根据移动轨迹判断手势类型,手势类型包括向上、向左、向左和向右等,具体判断方法可以是:如图4(a)所示,将平面空间分成八个区域,将移动轨迹的起始点作为原点,当移动轨迹在区域1和2内时,判断移动轨迹方向为向上;当移动轨迹在区域3和4内时,判断移动轨迹的方向为向右;当移动轨迹在区域5和6区域时,判断移动轨迹为向下;当移动轨迹在区域7和8内时,判断移动轨迹为向左;如图4(b)所示的两个移动轨迹,根据上述的判断方法,移动轨迹1为先向下后向右,移动轨迹2为向下。然后,根据手势类型响应相应的操作,例如,向上、向下翻页、向前、向后切换活动页面、页面前进与后退等。如,以鼠标输入为例,当按住鼠标右键向下画线时,松开鼠标时,当前正在运行的页面向下翻页;当按住鼠标右键向上画线时,松开鼠标时,当前正在运行的页面向上翻页;当按住鼠标右键向左画线时,松开鼠标时,当前页面后退到上一层页面;当按住鼠标右键向右画线时,松开鼠标时,当前页面前进到下一层页面;当按住鼠标右键向上再向右拐弯时,将位于当前活动页面左侧的在后台运行的页面切换成活动页面;当按住鼠标右键向上再向左拐弯时,松开鼠标时,将位于当前活动页面右侧的在后台运行的页面切换成活动页面,当按住鼠标右键向下再向右拐弯,松开鼠标时,关闭当前页面等。应当理解,图4所示的示例仅为举例说明,在实际的控制过程中,还可以设置更加丰富的控制命令进行控制,鼠标操作可以与手势滑动操作相对应理解。在本发明的一个实施例中,上述的翻页或者切换页面的操作在鼠标抬起时响应。根据本发明实施例的根据用户手势进行控制的方法,通过判断移动轨迹对应用程序的页面执行相应的操作,避免了通过点击鼠标造成的误操作,如在当前活动页面和后台运行的页面之间的切换时,不小心点到关闭按钮而把页面关闭时需要重新打开页面链接,造成不必要的麻烦,提升用户体验。在本发明的一个实施例中,采用GDI(GraphicsDeviceInterface,图形设备接口)+提供的基样条在覆盖图层中显示移动轨迹。GDI的主要任务是负责计算机系统与绘图程序之间的信息交换,处理所有桌面程序的图形输出;基样条是一连串单独的曲线,这些曲线连接起来形成一条较大的曲线,样条由点的数组和张力参数指定,基数样条平滑地经过数组中的每个点;曲线的陡度上没有尖角和突然的变化。由此,显示的移动轨迹比较平滑,将移动轨迹在覆盖窗体中显示,用户可直观地看到当前操作,形象、直观。在本发明的一个实施例中,应用程序可为浏览器。应当理解的是,本发明任一项实施例所述的根据鼠标手势进行控制的方法不仅可以在浏览器上实现,还可以在windows(微软公司开发的一种操作系统)平台中任何应用程序都可以按照即可本发明实施例所述的根据鼠标手势进行控制的方法实现手势控制。为了实现上述实施例,本发明还提出一种根据用户手势进行控制的装置。图5是根据本发明一个实施例的根据用户手势进行控制的装置的结构框图。如图5所示,根据用户手势进行控制的装置包括:监测模块100、覆盖图层管理模块200、获取模块300和当前窗口控制模块400。具体地,监测模块100用于检测是否有用户手势输入。在本发明的一个实施例中,用户手势通过鼠标或者触摸板或者触控显示屏幕输入,用户手势是指用户通过鼠标或者触摸板或者触控显示屏幕输入的以控制应用程序完成相应操作时的一系列动作,例如,在PC(personalcomputer,个人计算机)上使用鼠标输入用户手势,或者在个人笔记本上通过鼠标或在触摸板上输入用户手势,或者在移动终端上通过触控显示屏幕上输入用户手势,总之,用户可以使用任意输入设备输入用户手势,又如,用户手势可以是按下鼠标的某个键画出的一个移动轨迹,也可以是用户在触摸板画出的一个移动轨迹等。覆盖图层管理模块200用于在检测到有用户手势输入时,创建覆盖当前窗口的覆盖图层。在本发明的一个实施例中,覆盖图层相对于当前窗口透明。其中,相对于当前窗口透明可为全透明,即用户在应用程序中看到的只有当前窗口,覆盖图层用户看不见但是实际存在,由此,可使得覆盖图层不影响当前窗口的显示,提升用户体验;或者,相对于当前窗口透明可为按比例透明,例如半透明,用户还可以设置相应的透明比例,由此,给予用户提示,提示用户是在覆盖图层中进行鼠标手势操作,提升用户体验。在本发明的一个实施例中,覆盖图层的大小和当前窗口相同。应当理解的是,覆盖图层的大小还可根据需要设定,例如,可设置小于当前窗口。获取模块300用于获取用户手势在覆盖图层中的移动轨迹。当前窗口控制模块400用于根据移动轨迹对当前窗口进行控制。例如,根据移动轨迹可实现应用程序的当前窗口的相关命令,如,前进、后退、刷新等。根据本发明实施例的根据用户手势进行控制的装置,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。图6是根据本发明另一个实施例的根据用户手势进行控制的装置的结构框图。如图6所示,根据用户手势进行控制的装置包括:监测模块100、覆盖图层管理模块200、获取模块300、当前窗口控制模块400和判断模块500。具体地,当检测到有用户手势输入时,还需要对用户手势进行筛选。判断模块500用于判断检测到的用户手势是否符合预设手势,其中,覆盖图层管理模块200还用于在判断模块500判断符合预设手势时创建覆盖当前窗口的覆盖图层。其中,预设手势与输入设备相对应。例如,如果是使用鼠标输入用户手势,则判断输入的用户手势是否为按下预设的鼠标键,例如是否为右键等,如果按下鼠标右键,则创建覆盖当前窗口的覆盖图层,或者判断输入的用户手势是否为按下预设的鼠标键滑动预设轨迹。又如,如果在触摸板或者触摸显示屏幕上预先定义预设手势,如果用户输入的符合定义的预设手势,则创建覆盖当前窗口的覆盖图层。应当理解,预设手势主要起到创建覆盖当前窗口的覆盖图层的作用,防止误操作。应当理解,还可以通过其他方式启动创建覆盖当前窗口的覆盖图层,例如,按下键盘的某些功能键也创建覆盖当前窗口的覆盖图层,又如,设置成启动应用程序时即发送启动指令等。根据本发明实施例的根据用户手势进行控制的装置,通过预设手势对用户手势进行筛选,符合预设手势时才可创建覆盖当前窗口的覆盖图层的作用,防止误操作。图7是根据本发明又一个实施例的根据用户手势进行控制的装置的结构框图。如图7所示,根据用户手势进行控制的装置包括:监测模块100、覆盖图层管理模块200、获取模块300、当前窗口控制模块400、判断模块500和显示模块600。具体地,显示模块600用于在覆盖图层中显示移动轨迹。其中,在覆盖图层中显示移动轨迹可直观、形象地展示用户执行的手势,提升用户体验。在本发明的一个实施例中,覆盖图层通过浏览器主进程生成,且移动轨迹通过浏览器主进程在覆盖图层中绘制。在本发明的一个实施例中,浏览器主进程通过当前窗口的窗口进程获取移动轨迹。具体地,首先浏览器主进程接收启动指令,之后浏览器主进程根据用户输入的用户手势生成覆盖图层,在覆盖图层中执行鼠标或者手势滑动操作时,覆盖图层不接收鼠标操作或手势滑动消息,鼠标操作或手势滑动消息直接透过去由覆盖图层所覆盖的当前窗口接收,当前窗口接收鼠标操作或手势滑动消息之后,将该鼠标操作或手势滑动消息发送至浏览器主进程,浏览器主进程获取对应的移动轨迹,并将移动轨迹绘制在覆盖图层中。由此,通过当前窗口接收鼠标操作或手势滑动消息,覆盖图层不接收消息,鼠标或手势滑动消息直接透过去由覆盖图层下的当前窗口接收,然后浏览器主进程再根据鼠标或手势滑动操作在覆盖图层中显示移动轨迹,可以避免在正在播放的视频、flash等动态对象上画线时出现不断置顶或者闪屏的现象,提升用户体验;此外,移动轨迹可在覆盖图层中平滑地呈现出来,不会出现闪烁现象。在上述任一项所述的实施例中,需要对用户手势进行判断:在本发明的一个实施例中,监测模块100还用于获取用户手势的移动距离,并判断移动距离是否大于预设移动距离,以及在判断大于预设移动距离时,确定有用户手势输入。具体地,预设移动距离可为用户设置或者系统默认的最小移动距离,从用户按下手势的位置坐标算起,捕获用户手势的移动距离(例如,可以跟踪鼠标位置等),当移动距离大于预设移动距离时,则认为是移动操作,否则认为是点击操作。由此可以防止误操作。在本发明的一个实施例中,当前窗口控制模块400还用于根据移动轨迹获得对应的控制命令,并根据控制命令对当前窗口进行控制。具体地,首先,当前窗口控制模块400根据移动轨迹判断手势类型,然后,当前窗口控制模块400根据手势类型响应相应的操作,例如,向上、向下翻页、向前、向后切换活动页面、页面前进与后退等。由此,避免了通过点击鼠标造成的误操作,如在当前活动页面和后台运行的页面之间的切换时,不小心点到关闭按钮而把页面关闭时需要重新打开页面链接,造成不必要的麻烦,提升用户体验。在本发明的一个实施例中,应用程序可为浏览器。应当理解的是,本发明任一项实施例所述的根据鼠标手势进行控制的装置不仅可以在浏览器上实现,还可以在windows(微软公司开发的一种操作系统)平台中任何应用程序都可以按照即可本发明实施例所述的根据鼠标手势进行控制的方法实现手势控制。为了实现上述实施例,本发明还提出一种客户端。客户端包括:外壳,屏幕,处理器,处理器和电路板;屏幕安置在外壳上,电路板安置在外壳围成的空间内部,处理器和存储器设置在电路板上;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于:S101’,监测是否有用户手势输入。具体地,在本发明的一个实施例中,用户手势通过鼠标或者触摸板或者触控显示屏幕输入,用户手势是指用户通过鼠标或者触摸板或者触控显示屏幕输入的以控制应用程序完成相应操作时的一系列动作,例如,在PC(personalcomputer,个人计算机)上使用鼠标输入用户手势,或者在个人笔记本上通过鼠标或在触摸板上输入用户手势,或者在移动终端上通过触控显示屏幕上输入用户手势,总之,用户可以使用任意输入设备输入用户手势,又如,用户手势可以是按下鼠标的某个键画出的一个移动轨迹,也可以是用户在触摸板画出的一个移动轨迹等。S102’,在检测到有用户输入手势时,创建覆盖当前窗口的覆盖图层。覆盖图层在本发明的一个实施例中,覆盖图层相对于当前窗口透明。其中,相对于当前窗口透明可为全透明,即用户在应用程序中看到的只有当前窗口,覆盖图层用户看不见但是实际存在,由此,可使得覆盖图层不影响当前窗口的显示,提升用户体验;或者,相对于当前窗口透明可为按比例透明,例如半透明,用户还可以设置相应的透明比例,由此,给予用户提示,提示用户是在覆盖图层中进行鼠标手势操作,提升用户体验。在本发明的一个实施例中,覆盖图层的大小和当前窗口相同。应当理解的是,覆盖图层的大小还可根据需要设定,例如,可设置小于当前窗口。S103’,获取用户手势在覆盖图层中的移动轨迹。S104’,根据移动轨迹对当前窗口进行控制。例如,根据移动轨迹可实现应用程序的当前窗口的相关命令,如,前进、后退、刷新等。在本发明的一个实施例中,所述处理器还用:在覆盖图层中显示移动轨迹。其中,在覆盖图层中显示移动轨迹可直观、形象地展示用户执行的手势,提升用户体验。根据本发明实施例的客户端,生成覆盖图层以覆盖当前窗口,在覆盖图层上绘制图像,但是在当前窗口上执行操作,由此,当应用程序(例如浏览器)的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。当检测到有用户手势输入时,还需要对用户手势进行筛选。在本发明的一个实施例中,处理器还用于在创建覆盖当前窗口的覆盖图层之前,判断检测到的用户手势是否符合预设手势,并在符合预设手势时创建覆盖当前窗口的覆盖图层。其中,预设手势与输入设备相对应。例如,如果是使用鼠标输入用户手势,则判断输入的用户手势是否为按下预设的鼠标键,例如是否为右键等,如果按下鼠标右键,则创建覆盖当前窗口的覆盖图层,或者判断输入的用户手势是否为按下预设的鼠标键滑动预设轨迹。又如,如果在触摸板或者触摸显示屏幕上预先定义预设手势,如果用户输入的符合定义的预设手势,则创建覆盖当前窗口的覆盖图层。应当理解,预设手势主要起到创建覆盖当前窗口的覆盖图层的作用,防止误操作。应当理解,还可以通过其他方式启动创建覆盖当前窗口的覆盖图层,例如,按下键盘的某些功能键也创建覆盖当前窗口的覆盖图层,又如,设置成启动应用程序时即发送启动指令等。在本发明的一个实施例中,覆盖图层通过浏览器主进程生成,且移动轨迹通过浏览器主进程在覆盖图层中绘制。在本发明的一个实施例中,浏览器主进程通过当前窗口的窗口进程获取移动轨迹。具体地,首先浏览器主进程接收启动指令,之后浏览器主进程根据用户输入的用户手势生成覆盖图层,在覆盖图层中执行鼠标或者手势滑动操作时,覆盖图层不接收鼠标操作或手势滑动消息,鼠标操作或手势滑动消息直接透过去由覆盖图层所覆盖的当前窗口接收,当前窗口接收鼠标操作或手势滑动消息之后,将该鼠标操作或手势滑动消息发送至浏览器主进程,浏览器主进程获取对应的移动轨迹,并将移动轨迹绘制在覆盖图层中。由此,通过当前窗口接收鼠标操作或手势滑动消息,覆盖图层不接收消息,鼠标或手势滑动消息直接透过去由覆盖图层下的当前窗口接收,然后浏览器主进程再根据鼠标或手势滑动操作在覆盖图层中显示移动轨迹,可以避免在正在播放的视频、flash等动态对象上画线时出现不断置顶或者闪屏的现象,提升用户体验;此外,移动轨迹可在覆盖图层中平滑地呈现出来,不会出现闪烁现象。在上述任一项所述的实施例中,需要对用户手势进行判断:判断用户手势为点击操作或移动轨迹。在本发明的一个实施例中,所述处理器还用于检测是否有用户手势输入具体包括以下步骤:获取用户手势的移动距离;判断移动距离是否大于预设移动距离;以及如果大于预设移动距离,则确定有用户手势输入。具体地,预设移动距离可为用户设置或者系统默认的最小移动距离,从用户按下手势的位置坐标算起,捕获用户手势的移动距离(例如,可以跟踪鼠标位置等),当移动距离大于预设移动距离时,则认为是移动操作,否则认为是点击操作。由此可以防止误操作。在本发明的一个实施例中,处理器具体用于:S201’,监测是否有用户手势输入。S202’,在检测到有用户输入手势时,判断检测到的用户手势是否符合预设手势。S203’,如果符合预设手势,则创建覆盖当前窗口的覆盖图层。S204’,获取用户手势在覆盖图层中的移动轨迹。S205’,根据移动轨迹对当前窗口进行控制,并在覆盖图层图层中显示移动轨迹。S206’,根据移动轨迹获得对应的控制命令,并根据控制命令对当前窗口进行控制。S207’,如果不符合预设手势,则根据用户手势对当前窗口进行控制。根据本发明实施例的客户端,避免了通过点击鼠标造成的误操作,如在当前活动页面和后台运行的页面之间的切换时,不小心点到关闭按钮而把页面关闭时需要重新打开页面链接,造成不必要的麻烦,提升用户体验。在本发明的一个实施例中,应用程序可为浏览器。应当理解的是,本发明任一项实施例所述的客户端中不仅可以运行浏览器,还可以运行windows(微软公司开发的一种操作系统)平台中的任何应用程序。为了实现上述实施例,本发明还提出一种应用程序。一种应用程序,该应用程序用于在运行时执行如上所述任一项实施例所述的根据用户手势进行控制的方法。根据本发明实施例的应用程序,生成覆盖图层以覆盖应用程序的当前窗口,在覆盖图层上绘制图像,但是在应用程序执行操作,由此,当应用程序的页面中播放的视频、flash动画等动态对象不会出现置顶(即不会在视频、flash等上进行画线)和闪屏的现象,不影响应用程序页面上正在播放的视频和flash等动态对象的正常播放,不影响应用程序对动态对象的播放和渲染,提升用户体验;此外,使用相对于当前窗口透明的覆盖图层显著提升拥有复杂形状和各种可视化效果(如动画,半透明效果)的性能,用户可通过鼠标在覆盖图层中画出丰富的移动轨迹,提升用户体验,丰富控制方法。为了实现上述实施例,本发明还提出一种存储介质。一种存储介质,用于存储应用程序,该应用程序用于在运行时执行如上所述任一项实施例所述的根据鼠标手势进行控制的方法。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1