python实现键盘控制鼠标移动

yipeiwu_com6年前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装饰器验证配置文件示例

根据不同配置文件调用不同的验证函数检查输入。可以根据需求更改验证函数的逻辑。 复制代码 代码如下:def VerifyData(func):     def...

pygame游戏之旅 添加游戏介绍

pygame游戏之旅 添加游戏介绍

本文为大家分享了pygame游戏之旅的第9篇,供大家参考,具体内容如下 在游戏开始之前定义一个函数,用来显示游戏介绍: def game_intro(): intro = Tru...

详解使用python crontab设置linux定时任务

熟悉linux的朋友应该知道在linux中可以使用crontab设置定时任务。可以通过命令crontab -e编写任务。当然也可以直接写配置文件设置任务。 但是有时候希望通过脚本自动设置...

python创建列表和向列表添加元素的实现方法

今天的学习内容是python中的列表的相关内容。 一.创建列表 1.创建一个普通列表 >>> tabulation1 = ['大圣','天蓬','卷帘'] >...

Python类装饰器实现方法详解

本文实例讲述了Python类装饰器。分享给大家供大家参考,具体如下: 编写类装饰器 类装饰器类似于函数装饰器的概念,但它应用于类,它们可以用于管理类自身,或者用来拦截实例创建调用以管理实...