在之前写的一篇《Python:监控键盘输入、鼠标操作,并将捕获到的信息记录到文件中》文章中,有个读者留言如下:
这看似一个很平常的需求,但实现起来并不容易,如果用快捷键来控制一个程序干些别的事情那是非常容易的,但关键是本程序刚好是用hook来监控键盘,所以必须使用PumpMessages(),而此函数使用当前程序进入消息循环,它抓取每个鼠标和键盘事件。当我们的程序跑起来后,按下停止的热键时,也被此函数捕获,所以定义的任何热键均不能生效,具体实现及测试在文章《Python:通过自定义系统级快捷键来控制程序运行》中有所描述。
现在,我们换一个思路,既然已经监控到了按键,那就判断当前的按键是不是预先定义的热键,如果是,则可调用自己的处理函数,这样就找到了一个控制的入口,可以通过它实现我们想要的功能,注意此时不能让程序调用os.exit(0)让程序退出,否则再次按启动热键时就没法玩了。具体实现如下,代码中有详细注释,不再一一解释。
一、代码:
二、测试:
1、以下打印是按下热键时控制台输出(支持当前程序不是非激活窗口下按下热键)
2、日志内容:
可以看到,在23:16:58停止记录日志后,至23:17:05重新开始记录之前,所有的键盘和鼠标输入均没有记录,达到预期效果。
分享到:
相关推荐
python:自定义函数实现加法
#最重要的快捷键 1. ctrl+shift+A:万能命令行 2. shift两次:查看资源文件 #新建工程第一步操作 1. module设置把空包分层去掉,compact empty middle package 2. 设置当前的工程是utf-8,设置的Editor-->File ...
操作系统和许多程序会产生各种错误信息、警告信息和其他的提示信息,这种信息会记录到日志里面。系统日志里面有很多东西可以被我们进行分析,所以我们需要对产生的日志进行分析。本次的任务是统计出apache访问日志中...
今天小编就为大家分享一篇对python 自定义协议的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
一个用python实现制定快捷键输入的方法 非常不错,可以参考下
Eliot 是一个 Python 日志系统,不只是为简单应用程序所设计,更主要是为一些复杂的应用和分布式系统设计。支持简单结构消息,同时也可记录一系列的动作链。特性:结构化,类型化的日志消息可记录动作而不只是简单...
Python的3种高级快捷键组合,共有数十中快捷键方式。
使用Gmail API和Python发送多个自定义电子邮件
python常用快捷键,方便大家查找使用,希望对大家能有帮助。
Python 如何使用自定义404错误页面提升用户体验 Python源码Python 如何使用自定义404错误页面提升用户体验 Python源码Python 如何使用自定义404错误页面提升用户体验 Python源码Python 如何使用自定义404错误页面...
Python 如何实现自定义添加选项 Python源码Python 如何实现自定义添加选项 Python源码Python 如何实现自定义添加选项 Python源码Python 如何实现自定义添加选项 Python源码Python 如何实现自定义添加选项 Python源码...
本实例是一个关于python自定义异常的实例,供大家学习和交流
其原理是通过 Python 在自带的搜索路径下添加一个 myFunc.pth 的配置文件 在 myFunc.pth 配置文件中写入自定义函数的路径 其原理与手动添加原理没有什么差别 只是省去自己找问价路径 使用方法: 将本程序放入自己...
【python:神经网络完成自定义数据分类任务】(csdn)————程序
主要给大家介绍了关于Python3导入自定义模块的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
下面我们来看一个简单的例子,该函数用于计算两个数的和: ``` def add(x, y): result = x + y python语言程序设计自定义函数全文共3页,当前为第1页。 return result python语言程序设计自定义函数全文共3页,当前...
利用python实现了自定义表情包,可以在表情包上添加自定义文字,附有完整代码以及注释
可以用python编写的一个自定义公告板,
python运⾏命令快捷键-Pycharm快捷键python基础教程 python⼊门pyt。。。 Ctrl + Shift + Q 全屏 Ctrl + Shift + Alt + Q presentation mode Shift + ESC 关闭除编辑区域的其他区域 Ctrl + Shift + Z Run替换 Ctrl +...
python-elasticsearch-logger, 标准 python 日志记录框架的python Elasticsearch处理程序 CMRESHandler.py python Elasticsearch日志处理程序这个库提供了一个与标准日志库兼容的Elasticsearch日志附加组件。...