一种浏览器控制方法和浏览器的制造方法

文档序号:6519342阅读:170来源:国知局
一种浏览器控制方法和浏览器的制造方法
【专利摘要】本发明公开了一种浏览器控制方法,包括:若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上;当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;关闭所述分层透明窗口。通过实施本发明的方法,用户可在无需寻找点击浏览器按键的情况下完成对浏览器的控制,减少了误操作的可能性。
【专利说明】一种浏览器控制方法和浏览器
【技术领域】
[0001]本发明涉及人机交互【技术领域】,具体涉及一种浏览器控制方法和浏览器。
【背景技术】
[0002]当前,浏览器早已成为用户使用互联网最重要的系统工具。而在使用浏览器的过程中,通过鼠标操作浏览器则成为用户最主要的操作方式。用户通过鼠标的单击、双击、拖拽等动作向浏览器发出控制指令以实现对浏览器中特定对象的控制,例如打开/关闭窗口、前进/后退、刷新网页等。
[0003]但是,由于现有的浏览器中用于操作的按钮都设置固定的位置,并且由于浏览器功能地不断增强,浏览器窗口中放置的操作按钮越来越多,而每个按钮可操作面积也变得越来越小。当用户需要点击一个按钮时,寻找、定位按钮所耗费的时间不断增加,使用起来非常不便。

【发明内容】

[0004]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种浏览器控制方法和浏览器。
[0005]依据本发明的一个方面,提供了一种浏览器控制方法,包括:
[0006]若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口 ;所述分层透明窗口覆盖在所述浏览器窗口之上;
[0007]当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
[0008]在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
[0009]当检测到所述分层透明窗口中的鼠标右键移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
[0010]关闭所述分层透明窗口。
[0011]可选地,所述生成分层透明窗口,具体包括:
[0012]获取接收到鼠标右键点击消息时所述浏览器窗口相对于屏幕的大小和位置;
[0013]创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
[0014]可选地,所述在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹,具体包括:
[0015]当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
[0016]将内存DC更新到所述分层透明窗口上。
[0017]可选地,所述画一条线段到内存DC中,具体包括:
[0018]调用系统⑶I函数画一条线段到内存DC中;
[0019]所述将内存DC更新到所述分层透明窗口上,具体包括:[0020]调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
[0021]可选地,匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令具体包括:
[0022]根据所述鼠标位移信息获取对应的鼠标移动距离;
[0023]监测鼠标移动距离;
[0024]每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
[0025]根据记录的鼠标移动方向生成鼠标移动数组;
[0026]匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
[0027]可选地,所述鼠标移动的方向包括:上、下、左、右;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
[0028]所述根据记录的鼠标移动方向生成鼠标移动数组之前,还包括:
[0029]将记录的鼠标移动方向中连续的多个同一个方向合并为一个。
[0030]可选地,
[0031]所述鼠标触发点击消息为右键点击消息WM_RBUTT0ND0WN ;
[0032]所述鼠标移动消息为M0USE_M0VE ;
[0033]所述鼠标移出消息为右键移出消息WM_RBUTT0NUP。
[0034]根据本发明的另一方面,提供了一种浏览器,包括:
[0035]鼠标消息监听器,用于接收浏览器窗口的鼠标消息;
[0036]窗口生成器,用于当鼠标消息监听器接收到鼠标右键点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
[0037]所述鼠标消息监听器,还用于监听分层透明窗口中的鼠标消息;
[0038]鼠标位移获取器,用于当所述鼠标消息监听器在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
[0039]鼠标轨迹绘制器,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
[0040]浏览器操作指令执行器,用于当鼠标消息监听器检测到所述分层透明窗口中的鼠标右键离开消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
[0041]窗口销毁器,用于关闭所述分层透明窗口。
[0042]可选地,所述窗口生成器具体用于:
[0043]获取接收到鼠标右键点击消息时所述浏览器窗口相对于屏幕的大小和位置;
[0044]创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
[0045]可选地,所述鼠标位移获取器具体用于:
[0046]当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
[0047]将内存DC更新到所述窗口生成器创建的分层透明窗口上。
[0048]可选地,所述画一条线段到内存DC中,具体包括:[0049]调用系统⑶I函数画一条线段到内存DC中;
[0050]所述将内存DC更新到所述分层透明窗口上,具体包括:
[0051]调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
[0052]可选地,所述浏览器操作指令执行器具体包括:
[0053]距离获取子模块,用于根据所述鼠标位移获取器获取的鼠标位移信息获取对应的鼠标移动距离;
[0054]监测子模块,用于监测所述距离获取子模块获取的鼠标移动距离;
[0055]方向记录子模块,用于每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
[0056]移动数组生成子模块,用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组;
[0057]执行子模块,用于匹配所述移动数组生成子模块生成的鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
[0058]可选地,所述方向记录子模块记录的鼠标移动的方向包括:上、下、左、右;
[0059]所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
[0060]所述移动数组生成子模块用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组之前,还用于:
[0061]将所述方向记录子模块记录的鼠标移动方向中连续的多个同一个方向合并为一个。
[0062]可选地,
[0063]所述鼠标触发点击消息为右键点击消息WM_RBUTT0ND0WN ;
[0064]所述鼠标移动消息为M0USE_M0VE ;
[0065]所述鼠标移出消息为右键移出消息WM_RBUTT0NUP。
[0066]现有技术中,浏览器窗口中的操作按钮都设置在固定的位置,并且由于浏览器功能地不断增强,浏览器窗口中放置的操作按钮越来越多,而每个按钮可操作面积也变得越来越小,当用户需要点击一个按钮时,寻找、定位按钮所耗费的时间不断增加,使用起来非常不便。本发明实施例通过覆盖在当前浏览器窗口上的分层透明窗口绘制用户鼠标右键轨迹,并执行与鼠标轨迹对应的浏览器操作指令,使得用户在无需寻找、点击操作按钮的情况下,即可完成对浏览器的操作。与此同时,通过设置分层透明窗口的透明度,使得用户透过分层透明窗口能够直观地看到当前浏览器窗口中的内容,即使浏览器窗口中的视频、动画也能够实时显示,便于用户更加准确地操作浏览器。
[0067]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【专利附图】

【附图说明】
[0068]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0069]图1示出了根据本发明一个实施例的浏览器控制方法的流程图;
[0070]图2示出了根据本发明一个实施例的浏览器控制方法的流程图;
[0071]图3示出了根据本发明一个实施例的浏览器的结构示意图;
[0072]图4示出了根据本发明一个实施例的浏览器的结构示意图。
【具体实施方式】
[0073]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0074]实施例一
[0075]本实施例提供了一种浏览器控制方法,参见图1,所述方法具体流程包括:
[0076]S101,若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口 ;所述分层透明窗口覆盖在所述浏览器窗口之上。
[0077]一般而言,当用户操作鼠标时,通过点击鼠标上的按键可进行单击、双击等动作,并产生鼠标触发点击消息。为了不影响用户对鼠标左键的一般操作习惯,本发明实施例中,选择在用户点击鼠标右键时开始实施本发明。当然,本领域技术人员容易理解,本发明实施例所述及的鼠标触发点击消息还可通过触发鼠标左键、滚轮或其他能够实施触发动作的按键进行触发。
[0078]当用户通过鼠标实施点击/按压动作时,系统会接收到来自鼠标的点击消息。具体的,当用户点击按键时会产生触发点击消息;当用户释放按键时会产生移出消息。以Windows系统为例,点击鼠标右键时产生的触发点击消息为WM_RBUTT0ND0WN,移出/释放鼠标右键产生的消息为WM_RBUTT0NUP。为便于描述,本发明以下实施例中,以鼠标右键的触发、移动、移出为例进行描述。
[0079]当接收右键点击消息,创建一个分层透明窗口,并将所述分层透明窗口覆盖在当前当前浏览器窗口之上。分层透明窗口的大小、位置与当前浏览器窗口相同,并且由于窗口是透明的,用户可直接透过该分层透明窗口看到浏览器窗口中的内容。
[0080]需要说明的是,本发明实施例中所创建的分层透明窗口只要具有透明度即可,该分层透明窗口的风格、创建的方法可根据操作系统的不同而选择,本发明对此不作具体限制。例如,若当前操作系统为WINDOWS系统,则创建分层透明窗口具体包括:使用CreateffindowEx函数创建一个具有WS_EX_LAYERED扩展风格的透明窗口。由于新创建的透明窗口是在用户鼠标点击浏览器窗口的基础上建立的,因此将新创建的透明窗口称作所述浏览器窗口的分层透明窗口。
[0081]特别地,若当前操作系统为LINUX、MAC、UNIX等非WINDOWS系统,则创建分层透明窗口具体包括:使用当前操作系统下与所述CreateWindowEx函数具有类似功能的函数创建一个透明窗口。
[0082]需要说明的是,由于触摸板、写字板、控制杆等输入工具能够完成与鼠标相同的操作,因此本发明实施例中所述的鼠标也包括:触摸板、写字板、控制杆等输入工具。本领域技术人员应该理解,输入工具不是实现本发明的限定条件。
[0083]102,当在所述分层透明窗口中接收到鼠标移动消息,则获取对应的鼠标位移信
肩、O
[0084]当鼠标移动时,系统会接收到鼠标的移动消息M0USE_M0VE。通过获取鼠标移动的距离、方向生成鼠标位移信息。
[0085]S103,在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹。
[0086]根据获取到的鼠标位移信息绘制对应的移动轨迹,并将其显示在所述分层透明窗口中。
[0087]S104,当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
[0088]当用户释放按下的鼠标右键时,系统会接收到对应的右键移出消息WM_RBUTTONUPo
[0089]所述浏览器操作指令映射表中保存有鼠标移动轨迹和浏览器操作指令的对应关系。通过匹配鼠标轨迹与所述浏览器操作指令映射表可以将用户鼠标在所述分层透明窗口中的轨迹转换为对所述浏览器窗口的对应操作指令。在实施本发明时,用户可通过可视化窗口以映射表的方式预先设置并存储鼠标轨迹和对应的浏览器操作指令的映射关系,如表I所示:
【权利要求】
1.一种浏览器控制方法,包括: 若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口 ;所述分层透明窗口覆盖在所述浏览器窗口之上; 当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息; 在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹; 当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令; 关闭所述分层透明窗口。
2.如权利要求1所述的方法,其特征在于,所述生成分层透明窗口,具体包括: 获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置; 创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
3.如权利要求1所述的方法,其特征在于,所述在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹,具体包括: 当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置; 将内存DC更新到所述分层透明窗口上。
4.如权利要求3所述的方法,其特征在于,所述画一条线段到内存DC中,具体包括: 调用系统⑶I函数画一条线段到内存DC中; 所述将内存DC更新到所述分层透明窗口上,具体包括: 调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
5.如权利要求1所述的方法,其特征在于,匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令具体包括: 根据所述鼠标位移信息获取对应的鼠标移动距离; 监测鼠标移动距离; 每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向; 根据记录的鼠标移动方向生成鼠标移动数组; 匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
6.如权利要求5所述的方法,其特征在于,所述鼠标移动的方向包括:上、下、左、右;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系; 所述根据记录的鼠标移动方向生成鼠标移动数组之前,还包括: 将记录的鼠标移动方向中连续的多个同一个方向合并为一个。
7.一种浏览器,包括: 鼠标消息监听器,用于接收浏览器窗口的鼠标消息; 窗口生成器,用于当鼠标消息监听器接收到鼠标触发点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上; 所述鼠标消息监听器,还用于监听分层透明窗口中的鼠标消息; 鼠标位移获取器,用于当所述鼠标消息监听器在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息; 鼠标轨迹绘制器,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹; 浏览器操作指令执行器,用于当鼠标消息监听器检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令; 窗口销毁器,用于关闭所述分层透明窗口。
8.如权利要求7所述的浏览器,其特征在于,所述窗口生成器具体用于: 获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置; 创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
9.如权利要求7所述的浏览器,其特征在于,所述鼠标位移获取器具体用于: 当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置; 将内存DC更新到所述窗口生成器创建的分层透明窗口上。
10.如权利要求9所述的浏览器,其特征在于,所述画一条线段到内存DC中,具体包括: 调用系统⑶I函数画一条线段到内存DC中; 所述将内存DC更新到所述分层透明窗口上,具体包括: 调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
【文档编号】G06F17/30GK103631893SQ201310576675
【公开日】2014年3月12日 申请日期:2013年11月15日 优先权日:2013年11月15日
【发明者】万立新, 任寰 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1