CN103631893A - 一种浏览器控制方法和浏览器 - Google Patents

一种浏览器控制方法和浏览器 Download PDF

Info

Publication number
CN103631893A
CN103631893A CN201310576675.6A CN201310576675A CN103631893A CN 103631893 A CN103631893 A CN 103631893A CN 201310576675 A CN201310576675 A CN 201310576675A CN 103631893 A CN103631893 A CN 103631893A
Authority
CN
China
Prior art keywords
mouse
browser
window
transparent window
hierarchical
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.)
Granted
Application number
CN201310576675.6A
Other languages
English (en)
Other versions
CN103631893B (zh
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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310576675.6A priority Critical patent/CN103631893B/zh
Publication of CN103631893A publication Critical patent/CN103631893A/zh
Application granted granted Critical
Publication of CN103631893B publication Critical patent/CN103631893B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种浏览器控制方法,包括:若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上;当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;关闭所述分层透明窗口。通过实施本发明的方法,用户可在无需寻找点击浏览器按键的情况下完成对浏览器的控制,减少了误操作的可能性。

Description

一种浏览器控制方法和浏览器
技术领域
本发明涉及人机交互技术领域,具体涉及一种浏览器控制方法和浏览器。
背景技术
当前,浏览器早已成为用户使用互联网最重要的系统工具。而在使用浏览器的过程中,通过鼠标操作浏览器则成为用户最主要的操作方式。用户通过鼠标的单击、双击、拖拽等动作向浏览器发出控制指令以实现对浏览器中特定对象的控制,例如打开/关闭窗口、前进/后退、刷新网页等。
但是,由于现有的浏览器中用于操作的按钮都设置固定的位置,并且由于浏览器功能地不断增强,浏览器窗口中放置的操作按钮越来越多,而每个按钮可操作面积也变得越来越小。当用户需要点击一个按钮时,寻找、定位按钮所耗费的时间不断增加,使用起来非常不便。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种浏览器控制方法和浏览器。
依据本发明的一个方面,提供了一种浏览器控制方法,包括:
若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上;
当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
当检测到所述分层透明窗口中的鼠标右键移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
关闭所述分层透明窗口。
可选地,所述生成分层透明窗口,具体包括:
获取接收到鼠标右键点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
可选地,所述在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹,具体包括:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述分层透明窗口上。
可选地,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
可选地,匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令具体包括:
根据所述鼠标位移信息获取对应的鼠标移动距离;
监测鼠标移动距离;
每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
根据记录的鼠标移动方向生成鼠标移动数组;
匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
可选地,所述鼠标移动的方向包括:上、下、左、右;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
所述根据记录的鼠标移动方向生成鼠标移动数组之前,还包括:
将记录的鼠标移动方向中连续的多个同一个方向合并为一个。
可选地,
所述鼠标触发点击消息为右键点击消息WM_RBUTTONDOWN;
所述鼠标移动消息为MOUSE_MOVE;
所述鼠标移出消息为右键移出消息WM_RBUTTONUP。
根据本发明的另一方面,提供了一种浏览器,包括:
鼠标消息监听器,用于接收浏览器窗口的鼠标消息;
窗口生成器,用于当鼠标消息监听器接收到鼠标右键点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
所述鼠标消息监听器,还用于监听分层透明窗口中的鼠标消息;
鼠标位移获取器,用于当所述鼠标消息监听器在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
鼠标轨迹绘制器,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
浏览器操作指令执行器,用于当鼠标消息监听器检测到所述分层透明窗口中的鼠标右键离开消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
窗口销毁器,用于关闭所述分层透明窗口。
可选地,所述窗口生成器具体用于:
获取接收到鼠标右键点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
可选地,所述鼠标位移获取器具体用于:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述窗口生成器创建的分层透明窗口上。
可选地,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
可选地,所述浏览器操作指令执行器具体包括:
距离获取子模块,用于根据所述鼠标位移获取器获取的鼠标位移信息获取对应的鼠标移动距离;
监测子模块,用于监测所述距离获取子模块获取的鼠标移动距离;
方向记录子模块,用于每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
移动数组生成子模块,用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组;
执行子模块,用于匹配所述移动数组生成子模块生成的鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
可选地,所述方向记录子模块记录的鼠标移动的方向包括:上、下、左、右;
所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
所述移动数组生成子模块用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组之前,还用于:
将所述方向记录子模块记录的鼠标移动方向中连续的多个同一个方向合并为一个。
可选地,
所述鼠标触发点击消息为右键点击消息WM_RBUTTONDOWN;
所述鼠标移动消息为MOUSE_MOVE;
所述鼠标移出消息为右键移出消息WM_RBUTTONUP。
现有技术中,浏览器窗口中的操作按钮都设置在固定的位置,并且由于浏览器功能地不断增强,浏览器窗口中放置的操作按钮越来越多,而每个按钮可操作面积也变得越来越小,当用户需要点击一个按钮时,寻找、定位按钮所耗费的时间不断增加,使用起来非常不便。本发明实施例通过覆盖在当前浏览器窗口上的分层透明窗口绘制用户鼠标右键轨迹,并执行与鼠标轨迹对应的浏览器操作指令,使得用户在无需寻找、点击操作按钮的情况下,即可完成对浏览器的操作。与此同时,通过设置分层透明窗口的透明度,使得用户透过分层透明窗口能够直观地看到当前浏览器窗口中的内容,即使浏览器窗口中的视频、动画也能够实时显示,便于用户更加准确地操作浏览器。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的浏览器控制方法的流程图;
图2示出了根据本发明一个实施例的浏览器控制方法的流程图;
图3示出了根据本发明一个实施例的浏览器的结构示意图;
图4示出了根据本发明一个实施例的浏览器的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
本实施例提供了一种浏览器控制方法,参见图1,所述方法具体流程包括:
S101,若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上。
一般而言,当用户操作鼠标时,通过点击鼠标上的按键可进行单击、双击等动作,并产生鼠标触发点击消息。为了不影响用户对鼠标左键的一般操作习惯,本发明实施例中,选择在用户点击鼠标右键时开始实施本发明。当然,本领域技术人员容易理解,本发明实施例所述及的鼠标触发点击消息还可通过触发鼠标左键、滚轮或其他能够实施触发动作的按键进行触发。
当用户通过鼠标实施点击/按压动作时,系统会接收到来自鼠标的点击消息。具体的,当用户点击按键时会产生触发点击消息;当用户释放按键时会产生移出消息。以Windows系统为例,点击鼠标右键时产生的触发点击消息为WM_RBUTTONDOWN,移出/释放鼠标右键产生的消息为WM_RBUTTONUP。为便于描述,本发明以下实施例中,以鼠标右键的触发、移动、移出为例进行描述。
当接收右键点击消息,创建一个分层透明窗口,并将所述分层透明窗口覆盖在当前当前浏览器窗口之上。分层透明窗口的大小、位置与当前浏览器窗口相同,并且由于窗口是透明的,用户可直接透过该分层透明窗口看到浏览器窗口中的内容。
需要说明的是,本发明实施例中所创建的分层透明窗口只要具有透明度即可,该分层透明窗口的风格、创建的方法可根据操作系统的不同而选择,本发明对此不作具体限制。例如,若当前操作系统为WINDOWS系统,则创建分层透明窗口具体包括:使用CreateWindowEx函数创建一个具有WS_EX_LAYERED扩展风格的透明窗口。由于新创建的透明窗口是在用户鼠标点击浏览器窗口的基础上建立的,因此将新创建的透明窗口称作所述浏览器窗口的分层透明窗口。
特别地,若当前操作系统为LINUX、MAC、UNIX等非WINDOWS系统,则创建分层透明窗口具体包括:使用当前操作系统下与所述CreateWindowEx函数具有类似功能的函数创建一个透明窗口。
需要说明的是,由于触摸板、写字板、控制杆等输入工具能够完成与鼠标相同的操作,因此本发明实施例中所述的鼠标也包括:触摸板、写字板、控制杆等输入工具。本领域技术人员应该理解,输入工具不是实现本发明的限定条件。
102,当在所述分层透明窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息。
当鼠标移动时,系统会接收到鼠标的移动消息MOUSE_MOVE。通过获取鼠标移动的距离、方向生成鼠标位移信息。
S103,在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹。
根据获取到的鼠标位移信息绘制对应的移动轨迹,并将其显示在所述分层透明窗口中。
S104,当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
当用户释放按下的鼠标右键时,系统会接收到对应的右键移出消息WM_RBUTTONUP。
所述浏览器操作指令映射表中保存有鼠标移动轨迹和浏览器操作指令的对应关系。通过匹配鼠标轨迹与所述浏览器操作指令映射表可以将用户鼠标在所述分层透明窗口中的轨迹转换为对所述浏览器窗口的对应操作指令。在实施本发明时,用户可通过可视化窗口以映射表的方式预先设置并存储鼠标轨迹和对应的浏览器操作指令的映射关系,如表1所示:
Figure BDA0000415147400000081
表1
需要说明的是,表1中存储的操作指令可以对应一个鼠标轨迹,也可以是多个鼠标轨迹的组合,即鼠标轨迹数组。如表1中所示,鼠标轨迹数组(上,下)意味着用户当前的鼠标移动方向是多个移动方向的组合。
S105,关闭所述分层透明窗口。
本次鼠标手势操作完成,关闭所述生成的分层透明窗口。
特别地,在通过本发明实施例扩展的另一实施例中,生成分层透明窗口的触发条件还可以是点击鼠标左键、点击鼠标滑轮或者同时点击鼠标左右键,相应地在所述分层透明窗口中绘制鼠标轨迹也是在用户按住鼠标左键、按住鼠标滑轮或者同时按住鼠标左右键的情况下完成的。本领域技术人员应该理解,鼠标的按键规则不是实现本发明的限定条件。
本发明实施例提供的浏览器控制方法,在浏览器窗口之上生成并覆盖分层透明窗口,根据用户鼠标在所述分层透明窗口的移动轨迹执行对应的的浏览器操作指令,实现对所述浏览器的操作。相对于现有技术通过鼠标点击浏览器窗口按钮的方法,本发明实施例提供的方法避免了用户在浏览器窗口中寻找操作按钮的环节,简化了用户操作浏览器窗口的流程,为用户节省了时间。
特别地,在本发明的另一实施例中,若所述分层透明窗口的透明度不足以直观反映当前浏览器窗口中的内容时,本领域技术人员还可以将当前浏览器窗口的截图作为分层透明窗口,以保证分层透明窗口中显示的内容与当前浏览器窗口的内容一致。与上述实施例一相比,将浏览器窗口截图作为分层透明窗口显示用户鼠标移动轨迹,虽然可保证截图显示内容与浏览器窗口一致,但是,若当前浏览器窗口中显示的是动态画面,如视频、动画、FLASH等,截图中显示的会是停滞的视频画面,进而影响用户操作的直观性,而采用高透明度高分层窗口则可以避免出现这类问题。本领域技术人员应当理解,是否使用浏览器窗口截图作为分层透明窗口可在实施本发明时根据实际需要由自行决定,本发明对此不作具体限制。
实施例二
本实施例以WINDOWS系统为例描述本发明提供的一种浏览器控制方法,参见图2,所述方法具体流程包括:
S201,若接收到浏览器窗口的鼠标右键点击消息WM_RBUTTONDOWN,则获取接收到鼠标右键点击消息时所述浏览器窗口相对于屏幕的大小和位置。
S202,创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
WINDOWS系统下,创建分层透明窗口时首先使用CreateWindowEx函数创建一个具有WS_EX_LAYERED扩展风格,父窗口为浏览器窗口的分层透明窗口,然后用使用SetWindowPos函数设置这个分层透明窗口的大小和位置与当前浏览器窗口的大小和位置一样。这样就拥有了一个和当前浏览器窗口大小位置一样的分层透明窗口,并且所述分层透明窗口覆盖在所述浏览器窗口上。
S203,当在所述分层窗口中接收到鼠标移动消息MOUSE_MOVE,则获取对应的鼠标位移信息MOUSE_MOVE。
S204,在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹。
步骤S204具体包括:记录鼠标当前位置,并画一条线段到内存DC(Device Context)中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置。其中,画一条线段到内存DC中,具体而言,就是通过调用系统GDI函数画一条线段到内存DC中。
内存DC是GDI(Graphics Device Interface,图形设备接口)内部的一个资料结构。一个内存DC和一个特定的显示设备(如打印机、屏幕等)产生关联。信息在显示设备上显示之前,会被操作系统先保存在内存DC中,经过特定处理转为为规定的格式再显示在相应的显示设备上。
S205,将内存DC更新到所述分层透明窗口上。
本步骤具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
UpdateLayeredWindow函数可以将内存DC中保存的信息显示在屏幕的特定区域,因此可以通过调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
S206,当检测到所述分层透明窗口中的鼠标右键移出消息WM_RBUTTONUP,则根据所述鼠标位移信息获取对应的鼠标移动距离。
S207,每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向。
具体地,所述鼠标移动的方向包括:上、下、左、右等。本领域技术人员应当理解,本实施例所述的鼠标移动方向不限于跟屏幕的直角坐标轴垂直或平行。本领域技术人员在实施本发明时可以规定鼠标移动方向与坐标轴的夹角在一定范围内就认为该鼠标移动的方向为上,下、左、右与此相同。
判定鼠标移动预设数目个像素可以根据屏幕的实际分辨率进行设置,本发明实施例优选地为64个像素。
可选地,步骤S207之后还包括:将记录的鼠标移动方向中连续的多个同一个方向合并为一个。具体而言,每次当鼠标移动距离超过64个像素就做一次判断,判断结果是右,左,下,上四个值其中一个,连续的同一个方向会合并。比如上次的判断结果是右,这一次还是右,就忽略这一次。
S208,根据记录的鼠标移动方向生成鼠标移动数组。
鼠标移动数组记录了用户使用鼠标实施的多个方向的移动,例如(上,下),当然,鼠标移动数组中仅记录一个鼠标移动方向也是可以的。
S209,匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
例如(下,右)对应关闭操作,(右,下)对应刷新网页操作。
若不匹配,默认为无效操作。
S210,关闭所述分层透明窗口。
本次鼠标手势操作完成,关闭所述生成的分层透明窗口。
实施例三
本实施例提供了一种浏览器,参见图3,所述浏览器包括:
鼠标消息监听器301,用于接收浏览器窗口的鼠标消息;
窗口生成器302,用于当鼠标消息监听器301接收到鼠标触发点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
所述鼠标消息监听器301,还用于监听分层透明窗口中的鼠标消息;
鼠标位移获取器303,用于当所述鼠标消息监听器301在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
鼠标轨迹绘制器304,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
浏览器操作指令执行器305,用于当鼠标消息监听器301检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
窗口销毁器306,用于关闭所述分层透明窗口。
实施例四
本实施例提供了一种浏览器,参见图4,所述浏览器包括:
鼠标消息监听器401,用于接收浏览器窗口的鼠标消息;
窗口生成器402,用于当鼠标消息监听器401接收到鼠标触发点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
所述鼠标消息监听器401,还用于监听分层透明窗口中的鼠标消息;
鼠标位移获取器403,用于当所述鼠标消息监听器401在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
鼠标轨迹绘制器404,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
浏览器操作指令执行器405,用于当鼠标消息监听器401检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
窗口销毁器406,用于关闭所述分层透明窗口。
其中,所述窗口生成器402具体用于:
获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置.
其中,所述所述鼠标位移获取器403具体用于:当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;将内存DC更新到所述窗口生成器创建的分层透明窗口上。其中,画一条线段到内存DC中,具体包括:调用系统GDI函数画一条线段到内存DC中;所述将内存DC更新到所述分层透明窗口上,具体包括:调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
其中,浏览器操作指令执行器405,具体包括:
距离获取子模块4051,用于根据所述鼠标位移获取器404获取的鼠标位移信息获取对应的鼠标移动距离;
监测子模块4052,用于监测所述距离获取子模块4051获取的鼠标移动距离;
方向记录子模块4053,用于每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;所述方向记录子模块4053记录的鼠标移动的方向包括:上、下、左、右;
移动数组生成子模块4054,用于将所述方向记录子模块记录的鼠标移动方向中连续的多个同一个方向合并为一个,根据所述方向记录子模块4053记录的鼠标移动方向生成鼠标移动数组;
执行子模块4055,用于匹配所述移动数组生成子模块4054生成的鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器控制方法和浏览器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1,一种浏览器控制方法,包括:
若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上;
当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
关闭所述分层透明窗口。
A2、如A1所述的方法,所述生成分层透明窗口,具体包括:
获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
A3、如A1所述的方法,所述在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹,具体包括:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述分层透明窗口上。
A4、如A3所述的方法,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
A5、如A1所述的方法,匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令具体包括:
根据所述鼠标位移信息获取对应的鼠标移动距离;
监测鼠标移动距离;
每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
根据记录的鼠标移动方向生成鼠标移动数组;
匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
A6、如A5所述的方法,所述鼠标移动的方向包括:上、下、左、右;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
所述根据记录的鼠标移动方向生成鼠标移动数组之前,还包括:
将记录的鼠标移动方向中连续的多个同一个方向合并为一个。
A7、如A1至A5任意一项所述的方法,
所述鼠标触发点击消息为右键点击消息WM_RBUTTONDOWN;
所述鼠标移动消息为MOUSE_MOVE;
所述鼠标移出消息为右键移出消息WM_RBUTTONUP。
本发明还公开了B1、一种浏览器,包括:
鼠标消息监听器,用于接收浏览器窗口的鼠标消息;
窗口生成器,用于当鼠标消息监听器接收到鼠标触发点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
所述鼠标消息监听器,还用于监听分层透明窗口中的鼠标消息;
鼠标位移获取器,用于当所述鼠标消息监听器在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
鼠标轨迹绘制器,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
浏览器操作指令执行器,用于当鼠标消息监听器检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
窗口销毁器,用于关闭所述分层透明窗口。
B2、如B1所述的浏览器,所述窗口生成器具体用于:
获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
B3、如B1所述的浏览器,所述鼠标位移获取器具体用于:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述窗口生成器创建的分层透明窗口上。
B4、如B3所述的浏览器,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
B5、如B1所述的浏览器,所述浏览器操作指令执行器具体包括:
距离获取子模块,用于根据所述鼠标位移获取器获取的鼠标位移信息获取对应的鼠标移动距离;
监测子模块,用于监测所述距离获取子模块获取的鼠标移动距离;
方向记录子模块,用于每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
移动数组生成子模块,用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组;
执行子模块,用于匹配所述移动数组生成子模块生成的鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
B6、如B7所述的浏览器,所述方向记录子模块记录的鼠标移动的方向包括:上、下、左、右;
所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
所述移动数组生成子模块用于根据所述方向记录子模块记录的鼠标移动方向生成鼠标移动数组之前,还用于:
将所述方向记录子模块记录的鼠标移动方向中连续的多个同一个方向合并为一个。
B7、如B1至B6任意一项所述的浏览器,
所述鼠标触发点击消息为右键点击消息WM_RBUTTONDOWN;
所述鼠标移动消息为MOUSE_MOVE;
所述鼠标移出消息为右键移出消息WM_RBUTTONUP。

Claims (10)

1.一种浏览器控制方法,包括:
若接收到浏览器窗口的鼠标触发点击消息,则生成分层透明窗口;所述分层透明窗口覆盖在所述浏览器窗口之上;
当在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
当检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
关闭所述分层透明窗口。
2.如权利要求1所述的方法,其特征在于,所述生成分层透明窗口,具体包括:
获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
3.如权利要求1所述的方法,其特征在于,所述在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹,具体包括:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述分层透明窗口上。
4.如权利要求3所述的方法,其特征在于,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
5.如权利要求1所述的方法,其特征在于,匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令具体包括:
根据所述鼠标位移信息获取对应的鼠标移动距离;
监测鼠标移动距离;
每当鼠标移动距离超过预设数目个像素,则记录一次鼠标移动的方向;
根据记录的鼠标移动方向生成鼠标移动数组;
匹配所述鼠标移动数组与预设的浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令。
6.如权利要求5所述的方法,其特征在于,所述鼠标移动的方向包括:上、下、左、右;所述浏览器操作指令映射表存储了鼠标移动方向与浏览器操作指令的映射关系;
所述根据记录的鼠标移动方向生成鼠标移动数组之前,还包括:
将记录的鼠标移动方向中连续的多个同一个方向合并为一个。
7.一种浏览器,包括:
鼠标消息监听器,用于接收浏览器窗口的鼠标消息;
窗口生成器,用于当鼠标消息监听器接收到鼠标触发点击消息时,生成分层透明窗口,所述分层透明窗口覆盖在所述浏览器窗口之上;
所述鼠标消息监听器,还用于监听分层透明窗口中的鼠标消息;
鼠标位移获取器,用于当所述鼠标消息监听器在所述分层窗口中接收到鼠标移动消息,则获取对应的鼠标位移信息;
鼠标轨迹绘制器,用于在所述分层透明窗口中绘制所述鼠标位移信息对应的鼠标轨迹;
浏览器操作指令执行器,用于当鼠标消息监听器检测到所述分层透明窗口中的鼠标移出消息,则匹配所述鼠标轨迹与浏览器操作指令映射表,若匹配,执行匹配的浏览器操作指令;
窗口销毁器,用于关闭所述分层透明窗口。
8.如权利要求7所述的浏览器,其特征在于,所述窗口生成器具体用于:
获取接收到鼠标触发点击消息时所述浏览器窗口相对于屏幕的大小和位置;
创建分层透明窗口,所述分层透明窗口的父窗口为所述浏览器窗口,所述分层透明窗口与所述浏览器窗口具有相同的大小和位置。
9.如权利要求7所述的浏览器,其特征在于,所述鼠标位移获取器具体用于:
当接收到鼠标移动消息时,记录鼠标当前位置,并画一条线段到内存DC中,所述线段的起点是上一次记录的鼠标位置,终点是本次记录的鼠标当前位置;
将内存DC更新到所述窗口生成器创建的分层透明窗口上。
10.如权利要求9所述的浏览器,其特征在于,所述画一条线段到内存DC中,具体包括:
调用系统GDI函数画一条线段到内存DC中;
所述将内存DC更新到所述分层透明窗口上,具体包括:
调用系统UpdateLayeredWindow函数将内存DC更新到所述分层透明窗口上。
CN201310576675.6A 2013-11-15 2013-11-15 一种浏览器控制方法和浏览器 Active CN103631893B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310576675.6A CN103631893B (zh) 2013-11-15 2013-11-15 一种浏览器控制方法和浏览器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310576675.6A CN103631893B (zh) 2013-11-15 2013-11-15 一种浏览器控制方法和浏览器

Publications (2)

Publication Number Publication Date
CN103631893A true CN103631893A (zh) 2014-03-12
CN103631893B CN103631893B (zh) 2019-06-04

Family

ID=50212935

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310576675.6A Active CN103631893B (zh) 2013-11-15 2013-11-15 一种浏览器控制方法和浏览器

Country Status (1)

Country Link
CN (1) CN103631893B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103885787A (zh) * 2014-04-10 2014-06-25 刘兴光 一种操作指令分层设计方法及装置
CN104239559A (zh) * 2014-09-26 2014-12-24 北京金山安全软件有限公司 一种网页打开方法及装置
CN105511884A (zh) * 2015-12-14 2016-04-20 北京奇虎科技有限公司 登录器界面的设置方法及装置
CN106569655A (zh) * 2016-10-13 2017-04-19 福建天泉教育科技有限公司 Windows桌面显示激光笔的方法及系统
CN107423050A (zh) * 2017-04-28 2017-12-01 广州酷狗计算机科技有限公司 一种穿透操作的方法和装置
CN103902295B (zh) * 2014-04-01 2017-12-05 广东威创视讯科技股份有限公司 一种光标绘制方法以及相关终端设备
WO2017215247A1 (zh) * 2016-06-12 2017-12-21 广州视睿电子科技有限公司 窗口边框阴影显示方法及装置
CN108595082A (zh) * 2018-03-15 2018-09-28 维沃移动通信有限公司 一种信息提示方法及终端设备
CN110134897A (zh) * 2019-04-10 2019-08-16 口碑(上海)信息技术有限公司 浏览器窗口控制方法及装置
CN111382396A (zh) * 2018-12-29 2020-07-07 北京奇虎科技有限公司 一种主页保护方法及装置
CN111427524A (zh) * 2020-02-27 2020-07-17 深圳壹账通智能科技有限公司 远程控制的方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119620A1 (en) * 2007-11-06 2009-05-07 Ashish Jain Method and Apparatus for Hardware Controlled Intelligent Web Content Navigation System
CN102207814A (zh) * 2010-02-24 2011-10-05 郑国书 在计算机显示器上利用鼠标画线的方法
CN102332024A (zh) * 2011-09-30 2012-01-25 奇智软件(北京)有限公司 一种便携式移动终端的触摸控制式浏览器
CN102662581A (zh) * 2012-03-31 2012-09-12 奇智软件(北京)有限公司 以鼠标输入进行控制的方法及系统
CN103034518A (zh) * 2012-12-14 2013-04-10 北京奇虎科技有限公司 加载浏览器控制工具的方法及浏览器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119620A1 (en) * 2007-11-06 2009-05-07 Ashish Jain Method and Apparatus for Hardware Controlled Intelligent Web Content Navigation System
CN102207814A (zh) * 2010-02-24 2011-10-05 郑国书 在计算机显示器上利用鼠标画线的方法
CN102332024A (zh) * 2011-09-30 2012-01-25 奇智软件(北京)有限公司 一种便携式移动终端的触摸控制式浏览器
CN102662581A (zh) * 2012-03-31 2012-09-12 奇智软件(北京)有限公司 以鼠标输入进行控制的方法及系统
CN103034518A (zh) * 2012-12-14 2013-04-10 北京奇虎科技有限公司 加载浏览器控制工具的方法及浏览器

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902295B (zh) * 2014-04-01 2017-12-05 广东威创视讯科技股份有限公司 一种光标绘制方法以及相关终端设备
CN103885787A (zh) * 2014-04-10 2014-06-25 刘兴光 一种操作指令分层设计方法及装置
CN104239559A (zh) * 2014-09-26 2014-12-24 北京金山安全软件有限公司 一种网页打开方法及装置
CN105511884B (zh) * 2015-12-14 2019-05-24 北京奇虎科技有限公司 登录器界面的设置方法及装置
CN105511884A (zh) * 2015-12-14 2016-04-20 北京奇虎科技有限公司 登录器界面的设置方法及装置
US10636191B2 (en) 2016-06-12 2020-04-28 Guangzhou Shirui Electronics Co. Ltd. Method and apparatus of displaying window border shadow
WO2017215247A1 (zh) * 2016-06-12 2017-12-21 广州视睿电子科技有限公司 窗口边框阴影显示方法及装置
CN106569655A (zh) * 2016-10-13 2017-04-19 福建天泉教育科技有限公司 Windows桌面显示激光笔的方法及系统
CN107423050A (zh) * 2017-04-28 2017-12-01 广州酷狗计算机科技有限公司 一种穿透操作的方法和装置
CN108595082A (zh) * 2018-03-15 2018-09-28 维沃移动通信有限公司 一种信息提示方法及终端设备
CN108595082B (zh) * 2018-03-15 2020-05-26 维沃移动通信有限公司 一种信息提示方法及终端设备
CN111382396A (zh) * 2018-12-29 2020-07-07 北京奇虎科技有限公司 一种主页保护方法及装置
CN110134897A (zh) * 2019-04-10 2019-08-16 口碑(上海)信息技术有限公司 浏览器窗口控制方法及装置
CN110134897B (zh) * 2019-04-10 2022-02-08 口碑(上海)信息技术有限公司 浏览器窗口控制方法及装置
CN111427524A (zh) * 2020-02-27 2020-07-17 深圳壹账通智能科技有限公司 远程控制的方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN103631893B (zh) 2019-06-04

Similar Documents

Publication Publication Date Title
CN103631893A (zh) 一种浏览器控制方法和浏览器
KR101608183B1 (ko) 향상된 창 상태를 이용한 디스플레이 영역의 배열
US7880726B2 (en) 3D pointing method, 3D display control method, 3D pointing device, 3D display control device, 3D pointing program, and 3D display control program
US10394437B2 (en) Custom widgets based on graphical user interfaces of applications
KR100679039B1 (ko) 3차원 그래픽 유저 인터페이스, 이를 제공하는 장치 및방법
US20110187724A1 (en) Mobile terminal and information display method
KR20160013162A (ko) 다수의 디스플레이들을 위한 사용자 인터페이스 요소
US20190317658A1 (en) Interaction method and device for a flexible display screen
KR20200122386A (ko) 페이지 전환 방법, 장치, 저장 매체 및 컴퓨터 기기
CN102880399A (zh) 一种屏幕操作方法及装置
KR102205283B1 (ko) 적어도 하나의 어플리케이션을 실행하는 전자 장치 및 그 제어 방법
CN113536173B (zh) 一种页面处理方法、装置、电子设备及可读存储介质
CN113918260A (zh) 应用程序显示方法、装置及电子设备
JP4158462B2 (ja) 画面表示処理装置及び画面表示処理方法、並びにコンピュータ・プログラム
KR20150019064A (ko) 계층정보 표시방법 및 이를 이용한 계층정보 표시장치
CN114518822A (zh) 应用图标管理方法、装置和电子设备
CN110427138A (zh) 翻译信息处理方法、装置、电子设备及存储介质
CN115421631A (zh) 界面显示方法和装置
CN111708475B (zh) 虚拟键盘的生成方法和装置
CN110147260B (zh) 实现场景过渡动画的方法、介质、装置和计算设备
US10496237B2 (en) Computer-implemented method for designing a three-dimensional modeled object
CN102393203A (zh) 一种无硬按键的车载导航仪
US20200150859A1 (en) Method of operating widget on an electronic device
CN110785740B (zh) 基于规则的用户界面生成
EP2711804A1 (en) Method for providing a gesture-based user interface

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220721

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.