如何在linux和&amp ;;中检测背景中的按键组合用python的窗户?

时间:2015-08-16 10:30:38

标签: linux windows python-3.x keypress

如何使用python for linux和windows检测背景中的按键组合?

例如,

  检测到Ctrl+v

在后台执行doThis()

     检测到Tab

在后台执行doThat()

2 个答案:

答案 0 :(得分:3)

如果您正在使用python tkinter,请使用filemenu。然后下面的代码可能会帮助你。

from Tkinter import *
import sys
import Tkinter

class App(Tkinter.Tk):

    def __init__(self):
        Tkinter.Tk.__init__(self)
        menubar = Tkinter.Menu(self)
        fileMenu = Tkinter.Menu(menubar, tearoff=False)
        menubar.add_cascade(label="File", underline=0, menu=fileMenu)
        fileMenu.add_command(label="doThat", underline=1,
                             command=quit, accelerator="Ctrl+v")
        fileMenu.add_command(label="doThis", underline=1,
                             command=quit, accelerator="Tab")
        self.config(menu=menubar)

        self.bind_all("<Control-v>", self.doThat)
        self.bind_all("<Tab>", self.doThis)

    def doThat(self, event):
        print("Control v is pressed ...")

    def doThis(self, event):
        print("Tab is pressed...")

if __name__ == "__main__":
    app = App()
    app.mainloop()

答案 1 :(得分:1)

在Windows上

这可以使用  pyhook

在ubuntu上我是借助这个来做到的  pyxhook

编辑:另一个非常棒的Windows和Windows库Linux - keyboard