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 相关文章推荐
Eclipse + Python 的安装与配置流程
Mar 05 Python
在Django中限制已登录用户的访问的方法
Jul 23 Python
python制作最美应用的爬虫
Oct 28 Python
深度定制Python的Flask框架开发环境的一些技巧总结
Jul 12 Python
python使用Apriori算法进行关联性解析
Dec 21 Python
Python对象与引用的介绍
Jan 24 Python
windows下numpy下载与安装图文教程
Apr 02 Python
python对Excel按条件进行内容补充(推荐)
Nov 24 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
Jun 02 Python
基于pytorch中的Sequential用法说明
Jun 24 Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
Mar 04 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
打造计数器DIY三步曲(下)
2006/10/09 PHP
PHP实现邮件群发的源码
2013/06/18 PHP
PHP计算2点经纬度之间的距离代码
2013/08/12 PHP
PHP中exec与system用法区别分析
2014/09/22 PHP
php实现读取手机客户端浏览器的类
2015/01/09 PHP
PHP翻页跳转功能实现方法
2020/11/30 PHP
php 获取文件行数的方法总结
2016/10/11 PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
2017/05/23 PHP
PHP fclose函数用法总结
2019/02/15 PHP
laravel数据库查询结果自动转数组修改实例
2021/02/27 PHP
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
js实现的类似于asp数据字典的数据类型代码实例
2014/09/03 Javascript
深入理解JavaScript中的箭头函数
2015/07/28 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
基于canvas实现的钟摆效果完整实例
2016/01/26 Javascript
JavaScript实现带播放列表的音乐播放器实例分享
2016/03/07 Javascript
老生常谈javascript中逻辑运算符&&和||的返回值问题
2017/04/13 Javascript
详解jQuery获取特殊属性的值以及设置内容
2018/11/14 jQuery
傻瓜式vuex语法糖kiss-vuex整理
2018/12/21 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
JavaScript函数重载操作实例浅析
2020/05/02 Javascript
八大排序算法的Python实现
2021/01/28 Python
浅谈Python爬虫基本套路
2019/03/25 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
Python2手动安装更新pip过程实例解析
2020/07/16 Python
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
DIY蛋糕店的创业计划书范文
2013/12/26 职场文书
歌唱比赛获奖感言
2014/01/21 职场文书
爱护公共设施倡议书
2014/08/29 职场文书
党员群众路线教育实践活动剖析材料
2014/10/10 职场文书
个人廉政承诺书
2015/04/28 职场文书
学校光盘行动倡议书
2015/04/28 职场文书
2016优秀大学生个人事迹材料范文
2016/03/01 职场文书
导游词之安徽巢湖
2019/12/26 职场文书
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫