python2 監聽模擬鼠標鍵盤事件

提示,請在使用前自動裝上pymouse,pyhook,pythoncom

直接貼代碼吧

# -*- coding:utf-8 -*-
import os
import time
import threading
import pyHook
import  pythoncom
from pymouse import PyMouse
m = PyMouse() #創建一個鼠標對象
x=0 #設置鼠標的X
y=0 #設置y值
suo=False  #判斷是否鎖定了
#這個函數是實現鼠標鎖定,emmm,好吧,其實是我想寫一個FPS遊戲輔助,鎖定鼠標,不讓槍飄
def suoding(x,y):
  global suo,m
  x=1
  while(suo):
    time.sleep(0.01)#時間暫定爲0.01s,高頻率保證鼠標不動
    #m.move(x,y)#這個是實現鼠標固定
    print (x,y)#這個只是測試,如果真要實現固定功能,那就。。。把這行刪了吧
#這個是鍵盤事件,鍵盤x,作爲控制開關
def onKeyboardEvent(event):
    global suo
    c = chr(event.Ascii)
    print c
    if(c=='x'):
      if suo:
        suo=False
      else:
        suo=True
    return True
#鼠標事件
def OnMouseEvent(event):
  #513 左鍵按下
  #514左鍵按上
  #516右鍵按下
  #517右鍵按上
  global x,y,m
  if(suo):
    if(event.Message==513):
          (x, y) = m.position()
          thread1 = threading.Thread(target=suoding,args=(x,y,))#建個線程,不過我還沒用上鎖。。。感覺加個鎖會好一點
          print "我開始了"
          thread1.start()
  # 返回 True 可將事件傳給其它處理程序,否則停止傳播事件
  return True
# 創建鉤子管理對象
hm = pyHook.HookManager()
# 監聽所有鼠標事件
hm.MouseAll = OnMouseEvent  # 等效於hm.SubscribeMouseAll(OnMouseEvent)
# 開始監聽鼠標事件
hm.HookMouse()
hm.KeyDown = onKeyboardEvent
hm.HookKeyboard()
# 一直監聽,直到手動退出程序xxx
pythoncom.PumpMessages()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章