python使用pyhook监控键盘并实现切换歌曲的功能

yipeiwu_com6年前Python基础

自己在玩dota的时候有时候喜欢边玩游戏边听音乐,但是切换下一曲的时候必须得切出游戏,而切换音乐的热键ctrl+alt+方向键在游戏的时候没有用,好事蛋疼,今天试试使用python来实现键盘监控切换下一曲,下面贴出代码

import pythoncom, pyHook
import win32gui,win32api,win32con
 
Lcontrol_press = False
Lmenu_press = False
Left_press = False
 
def OnKeyboardEvent(event):
  global Lcontrol_press #在函数里面使用全局变量的时候要加上global关键字
  global Lmenu_press #要不然会出错
  global Left_press
  print 'Key:', event.Key
  if (event.Key == "Lcontrol"):
    Lcontrol_press = True
  elif(event.Key == "Lmenu"):
    Lmenu_press = True
  elif(event.Key == "Left"):
    Left_press =True
  handel_key()
  return True
def handel_key() :
  global Lcontrol_press
  global Lmenu_press
  global Left_press  
  if(Lcontrol_press and Lmenu_press and Left_press):
    win32api.keybd_event( 0xB0,win32con.VK_MEDIA_NEXT_TRACK,0,0)
    Lcontrol_press = False
    Lmenu_press = False
    Left_press = False
     
hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()
pythoncom.PumpMessages()

好了,把你的播放器设置为随机播放就可以在游戏的时候按下ctrl+alt+左方向键就可以切换音乐啦(ctrl和alt也是左边的)
顺便说明下,那三个快捷键不是组合键,意思是你要先按下ctrl然后放开,在按下alt,最后按一下做方向键就切换音乐了.这三个键的顺序不能按错.

相关文章

用Python操作字符串之rindex()方法的使用

 rindex()方法返回所在的子str被找到的最后一个索引,可选择限制搜索的字符串string[beg:end] 如果没有这样的索引存在,抛出一个异常。 语法 以下是rind...

怎么使用pipenv管理你的python项目

在thoughtbot,我们用Ruby和Rails工作,但通常我们总是尝试使用最合适的语言或者框架来解决问题。我最近一直在探索机器学习技术,所以Python使用地更多。 Ruby项目...

pygame学习笔记(1):矩形、圆型画图实例

pygame学习笔记(1):矩形、圆型画图实例

pygame是一个设计用来开发游戏的python模块,其实说白了和time、os、sys都是一样的东东。今天开始正式学习pygame,下载地址:www.pygame.org。下载后安装完...

PyCharm使用Docker镜像搭建Python开发环境

PyCharm使用Docker镜像搭建Python开发环境

在我们平时使用PyCharm的过程中,一般都是连接本地的Python环境进行开发,但是如果是离线的环境呢?这样就不好搭建Python开发环境,因为第三方模块的依赖复杂,不好通过离线安装包...

python xml解析实例详解

python xml解析 first.xml  <info> <person > <id>1</id> <n...