欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


怎样解决Win10系统文件管理器崩溃问题
傲游云浏览器记事本试用
如何锁定IE9的默认搜索引擎
解决IE9启动速度过慢的方法
IE9无法登录支付宝安装控件失败怎么办
IE9也能让你成为环保卫士“省电”
搜狗高速浏览器为什么占用内存那么大
搜狗高速浏览器有时提示假死、崩溃
IE9浏览器无法开启GPU硬件加速?
IE9无法取消“使用软件呈现而不使用GPU 呈现”
IE9双击标签页关闭当前选项卡的工具
【 来源:网络 】【 点击:1 】 【 发布时间:2017_03_03 08:59:59 】

  如何实现IE9双击关闭当前标签页(Tab选项卡页面)的功能,实现这个功能的基本原理如下:

  1、建立全局鼠标钩子,获取双击选项卡时候的消息,触发选项卡被双击的事件。

  2、发送Ctrl+W键盘消息,触发快捷键功能关闭当前选项卡页面。

  这里有几个问题需要解决:

  如何获取鼠标双击事件:

  通过spy++检测后发现,发现Tab栏是一个类型为DirectUIHWND的类,它是一个TabControl,本身并不支持鼠标双击消息,因此,需要自己根据MouseUP消息判断是否为双击消息(通过两次MouseUp的时间间隔来判断)。

  如何判断是否双击的标签页:

  由于创建的是全局钩子,所有的鼠标消息都会被截取到,因此这里要进行过滤。具体的条件为:鼠标触发点的控件类为DirectUIHWND,并且其进程为IE。

  如何关闭当前标签页:

  这个比较简单,直接调用keybd_event发送Ctrl+W即可。

  实现这个功能并不困难,但我想把它集成到BHO中时,却遇到了一个问题——当IE开启了保护模式时,是无法收到全局鼠标钩子的消息的。

  解决这个问题的方法有两种:

  关闭保护模式

  新写一个Hook程序实现鼠标消息的截取,然后在BHO中启动该进程。

  方法1的方法降低了浏览器的安全性,自然不可取。方法2虽然可以解决这个问题,但是却多了一个附加进程,虽然可以把它隐藏起来,用户感知不到,但始终不大爽。权衡再三,最终还是选择了方法2。(我对windows编程不熟,如果有更好的方法请告知)

  使用环境:Win 7+IE9+.net 4.0,其它环境无法执行。Win 7用户需安装.net 4.0后才能启动该程序。

  使用方法:

  打开IE9之后在手动启动该程序即可,启动后它便自动隐藏在后台(通过进程管理器可以查看到该程序,就不要不停的点了),然后就有了双击IE9标签页按钮关闭当前选项卡页面的功能了。当IE9关闭后,该程序也会自动关闭。

  再介绍一个快速关闭选项卡的方法:在选项卡(标签)中点击鼠标中间的滚轮键,便可以关闭选项卡。小编感觉这个方法要比双击关闭的方法更快速吧。

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号