キーボードでマウスの移動を制御します。


QQの卓球ゲームをする時、マウスでマウスの針の微小な移動を制御するのは比較的に骨が折れるので、プログラムを書きたいです。キーボードの上下左右のボタンでマウスの移動を制御できます。毎回一つのピクセルだけ移動します。
このスクリプトはpywin 32、pyHook、pymouseの2つのライブラリに依存します。ご自身でインストールしてください。コードの中のpythoncomはpywin 32ライブラリの一部です。スクリプトを実行すると、キーボードの上下左右ボタンでマウスの移動を制御できます。

# -*- 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()
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。