python实现键盘控制鼠标移动

yipeiwu_com7年前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基础-时间日期处理小结

步骤: 1. 掌握几种对象及其关系 2. 了解每类对象的基本操作方法 3. 通过转化关系转化 涉及对象 1. datetime >>> import datetim...

Python去除列表中重复元素的方法

本文实例讲述了Python去除列表中重复元素的方法。分享给大家供大家参考。具体如下: 比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','...

python判断windows隐藏文件的方法

python判断windows隐藏文件的方法

1. 通过windows attrib 命令获取文件隐藏属性复制代码 代码如下:Syntax      ATTRIB [ + attri...

python结合selenium获取XX省交通违章数据的实现思路及代码

python结合selenium获取XX省交通违章数据的实现思路及代码

前言:   目前在研究易信公众号,想给公众号增加一个获取个人交通违章的查询菜单,通过点击返回查询数据。以下是实施过程。 一、首先,用火狐浏览器打开XX省交管网,分析页面信息:   可以...

Python对象转JSON字符串的方法

本文实例讲述了Python对象转JSON字符串的方法。分享给大家供大家参考,具体如下: import json class JSONObject(object): def __i...