python实现键盘控制鼠标移动


Posted in Python onNovember 27, 2020

玩QQ桌球游戏时,有时候用鼠标控制鼠标指针的微小移动比较费劲儿,所以想写个程序,可以用键盘的上下左右键来控制鼠标的移动,每次只移动一个像素。

本脚本依赖pywin32、pyHook和pymouse这两个库,请自行安装。代码中的pythoncom是pywin32库的一部分,运行脚本后,即可通过键盘的上下左右键控制鼠标移动了。

# -*- coding:utf-8 -*-
# 左37 上38 右39 下40
 
import pythoncom
import pyHook
from pymouse import PyMouse
 
def onKeyboardEvent(event):
 # 获取所按下按键的id
 keyID = event.KeyID 
 # 获取当前鼠标的坐标
 mouse = PyMouse()
 x, y = mouse.position()
 x = int(x)
 y = int(y)
 
 # 设定x和y的偏移量
 deltaX = 0
 deltaY = 0
 
 if keyID == 37:
  deltaX = -1
 elif keyID == 38:
  deltaY = -1
 elif keyID == 39:
  deltaX = 1
 elif keyID == 40:
  deltaY = 1
 else:
  return True
 
 # 移动鼠标
 mouse.move(x + deltaX, y + deltaY)
 return True
 
def main():
 # 启动键盘事件的监听
 hm = pyHook.HookManager()
 hm.KeyDown = onKeyboardEvent
 hm.HookKeyboard()
 pythoncom.PumpMessages()
 
if __name__ == '__main__':
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3写入文件常用方法实例分析
May 22 Python
python实现批量下载新浪博客的方法
Jun 15 Python
Python3处理HTTP请求的实例
May 10 Python
关于Python的一些学习总结
May 25 Python
python实现烟花小程序
Jan 30 Python
python装饰器简介---这一篇也许就够了(推荐)
Apr 01 Python
详解python编译器和解释器的区别
Jun 24 Python
python 魔法函数实例及解析
Sep 25 Python
python性能测量工具cProfile使用解析
Sep 26 Python
Python colormap库的安装和使用详情
Oct 06 Python
Python中正则表达式对单个字符,多个字符和匹配边界等使用
Jan 27 Python
python实现代码审查自动回复消息
Feb 01 Python
解决python 无法加载downsample模型的问题
Oct 25 #Python
python实现写数字文件名的递增保存文件方法
Oct 25 #Python
python hook监听事件详解
Oct 25 #Python
python根据list重命名文件夹里的所有文件实例
Oct 25 #Python
python学习之hook钩子的原理和使用
Oct 25 #Python
基于Python实现定时自动给微信好友发送天气预报
Oct 25 #Python
python批量修改图片后缀的方法(png到jpg)
Oct 25 #Python
You might like
PHP 异步执行方法,模拟多线程的应用分析
2013/06/03 PHP
关于PHPDocument 代码注释规范的总结
2013/06/25 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
2014/07/08 PHP
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
js导航栏单击事件背景变换示例代码
2014/01/13 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
浅谈jquery设置和获得checkbox选中的问题
2016/08/19 Javascript
JavaScript探测CSS动画是否已经完成的方法
2016/08/30 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
2017/10/13 jQuery
vue项目国际化vue-i18n的安装使用教程
2018/03/14 Javascript
ES6 中可以提升幸福度的小功能
2018/08/06 Javascript
JavaScript选择排序算法原理与实现方法示例
2018/08/06 Javascript
原生Vue 实现右键菜单组件功能
2019/12/16 Javascript
JS正则表达式验证密码强度
2020/03/18 Javascript
JavaScript布尔运算符原理使用解析
2020/05/06 Javascript
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
python 基础教程之Map使用方法
2017/01/17 Python
关于反爬虫的一些简单总结
2017/12/13 Python
如何在python中使用selenium的示例
2017/12/26 Python
pandas DataFrame数据转为list的方法
2018/04/11 Python
关于Python-faker的函数效果一览
2019/11/28 Python
中国最大的名表商城:万表网
2016/08/29 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
货代行业个人求职简历的自我评价
2013/10/22 职场文书
家长对孩子的评语
2014/04/18 职场文书
消防宣传口号
2014/06/16 职场文书
关爱残疾人标语
2014/06/25 职场文书
小学毕业典礼演讲稿
2014/09/09 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
观后感的写法
2015/06/19 职场文书
写给汽车4S店的创业计划书,拿来即用!
2019/08/09 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
优化Mysql查询的示例
2022/04/26 MySQL
安装Windows Server 2012 R2企业版操作系统并设置好相关参数
2022/04/29 Servers