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的类方法和静态方法
Dec 13 Python
使用Python实现下载网易云音乐的高清MV
Mar 16 Python
python执行使用shell命令方法分享
Nov 08 Python
python实现决策树分类算法
Dec 21 Python
Python学生成绩管理系统简洁版
Apr 05 Python
详解Python 定时框架 Apscheduler原理及安装过程
Jun 14 Python
关于Python 的简单栅格图像边界提取方法
Jul 05 Python
用Python爬取QQ音乐评论并制成词云图的实例
Aug 24 Python
python 字典有序并写入json文件过程解析
Sep 30 Python
用openCV和Python 实现图片对比,并标识出不同点的方式
Dec 19 Python
Tensorflow读取并输出已保存模型的权重数值方式
Jan 04 Python
Python无头爬虫下载文件的实现
Apr 02 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语法(3)
2006/10/09 PHP
php array_map array_multisort 高效处理多维数组排序
2009/06/11 PHP
PHP学习笔记之一
2011/01/17 PHP
如何获知PHP程序占用多少内存(memory_get_usage)
2012/09/23 PHP
浅析PKI加密解密 OpenSSL
2013/07/01 PHP
DOM基础及php读取xml内容操作的方法
2015/01/23 PHP
完美解决JS中汉字显示乱码问题(已解决)
2006/12/27 Javascript
通过JAVAScript实现页面自适应
2007/01/19 Javascript
js实现DIV的一些简单控制
2007/06/04 Javascript
js判断变量是否空值的代码
2008/10/26 Javascript
Android中资源文件(非代码部分)的使用概览
2012/12/18 Javascript
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
jquery实现键盘左右翻页特效
2015/04/30 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
Java Mybatis框架入门基础教程
2015/09/21 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
深入解析Vue 组件命名那些事
2017/07/18 Javascript
vuex中使用对象展开运算符的示例
2017/09/25 Javascript
JS实现简易换图时钟功能分析
2018/01/04 Javascript
js 函数性能比较方法
2020/08/24 Javascript
详解Python使用tensorflow入门指南
2018/02/09 Python
Python类装饰器实现方法详解
2018/12/21 Python
python2和python3应该学哪个(python3.6与python3.7的选择)
2019/10/01 Python
Python3 io文本及原始流I/O工具用法详解
2020/03/23 Python
预备党员表决心书
2014/03/11 职场文书
颐和园英文导游词
2015/01/30 职场文书
转正申请报告格式
2015/05/15 职场文书
楚门的世界观后感
2015/06/03 职场文书
战马观后感
2015/06/08 职场文书
工伤调解协议书
2016/03/21 职场文书
4种非常实用的python内置数据结构
2021/04/28 Python
Python 高级库15 个让新手爱不释手(推荐)
2021/05/15 Python
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android