python实现键盘控制鼠标移动

yipeiwu_com5年前Python基础

玩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人工智能之路 之PyAudio 实现录音 自动化交互实现问答

Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答

Python 很强大其原因就是因为它庞大的三方库 , 资源是非常的丰富 , 当然也不会缺少关于音频的库 关于音频, PyAudio 这个库, 可以实现开启麦克风录音, 可以播放音频文件等...

python 统计一个列表当中的每一个元素出现了多少次的方法

如下所示: #coding=utf-8 #方式一 print('*'*20 + '方式一' + '*'*20) li1 = [1,2,2,3,3,3,4,4,4,4,5,5,5,5,...

Python文本相似性计算之编辑距离详解

Python文本相似性计算之编辑距离详解

编辑距离 编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。编辑操作包括将一个字符替换成另一个字符,插入一...

python中使用 xlwt 操作excel的常见方法与问题

前言 Python可以操作Excel的模块不止一种,我习惯使用的写入模块是xlwt(一般都是读写模块分开的) python中使用xlwt操作excel非常方,和Java使用调框架apac...

python解决字典中的值是列表问题的方法

问题:查找一些英文词在哪些小句中出现了,当然是用python来实现,当然是用字典,但是怎么让一个key对应一个 类型为列表的value,直接用列表的append()是不行的,比如dic[...