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 相关文章推荐
python自动安装pip
Apr 24 Python
python写xml文件的操作实例
Oct 05 Python
深入浅析Python中join 和 split详解(推荐)
Jun 30 Python
Python执行时间的计算方法小结
Mar 17 Python
利用python实现微信头像加红色数字功能
Mar 26 Python
django 实现电子支付功能的示例代码
Jul 25 Python
python爬虫获取新浪新闻教学
Dec 23 Python
selenium+python自动化测试之环境搭建
Jan 23 Python
详解pandas DataFrame的查询方法(loc,iloc,at,iat,ix的用法和区别)
Aug 02 Python
flask框架渲染Jinja模板与传入模板变量操作详解
Jan 25 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
Dec 09 Python
Python中相见恨晚的技巧
Apr 13 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统计当前在线用户数实例讲解
2015/10/21 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
2020/02/18 PHP
js 小贴士一星期合集
2010/04/07 Javascript
分页栏的web标准实现
2011/11/01 Javascript
jQuery Pagination Ajax分页插件(分页切换时无刷新与延迟)中文翻译版
2013/01/11 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
JS实现在网页中弹出一个输入框的方法
2015/03/03 Javascript
jQuery超简单选项卡完整实例
2015/09/26 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
2015/10/28 Javascript
基于JavaScript实现简单的随机抽奖小程序
2016/01/05 Javascript
BootStrap的table表头固定tbody滚动的实例代码
2016/08/24 Javascript
js 模仿锚点定位的实现方法
2016/11/19 Javascript
想学习javascript JS和jQuery哪个重要 先学哪个
2016/12/11 Javascript
vuejs手把手教你写一个完整的购物车实例代码
2017/07/06 Javascript
深入探究AngularJs之$scope对象(作用域)
2017/07/20 Javascript
在 Node.js 中使用原生 ES 模块方法解析
2017/09/19 Javascript
jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
2017/10/19 jQuery
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
pycharm 使用心得(一)安装和首次使用
2014/06/05 Python
使用pandas对两个dataframe进行join的实例
2018/06/08 Python
python cumsum函数的具体使用
2019/07/29 Python
需要知道的CSS3动画技术
2010/01/01 HTML / CSS
使用phonegap播放音频的实现方法
2017/03/31 HTML / CSS
Weekendesk意大利:探索多种引人入胜的周末主题
2016/10/14 全球购物
中国央视网签名寄语
2014/01/18 职场文书
民族团结先进个人事迹材料
2014/06/02 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
2019升学宴主持词范本5篇
2019/10/09 职场文书
深入理解redis中multi与pipeline
2021/06/02 Redis
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers
Flutter Navigator 实现路由传递参数
2022/04/22 Java/Android