当我按下键盘上的print screen
按钮时,我想触发一个事件,如下所示:
if keyboard-print screen:
print "5"
答案 0 :(得分:1)
请注意,tkinter解决方案在Mac上不起作用(至少它在我的Mac上不起作用)。我用Python 3.2.2和Python 2.7.2测试了它。如果窗口被撤消,它将无法获得焦点,因此它不会感知任何关键事件。
答案 1 :(得分:0)
Tkinter内置了按键事件。
import Tkinter as tk
def keypress(event):
if event.keysym == 'Escape':
root.destroy()
x = event.char
if x == "w":
print "blaw blaw blaw"
elif x == "a":
print "blaha blaha blaha"
elif x == "s":
print "blash blash blash"
elif x == "d":
print "blad blad blad"
else:
print x
root = tk.Tk()
print "Press a key (Escape key to exit):"
root.bind_all('<Key>', keypress)
# don't show the tk window
root.withdraw()
root.mainloop()
答案 2 :(得分:0)
在Windows中,您可以使用msvcrt模块:
这是特定于Windows的标准 扩展模块。它定义了一个 函数kbhit()检查是否 键盘命中存在,getch() 没有得到一个角色 回应它。
我不确定它是否适用于这两个组合按键
答案 3 :(得分:0)
Tkinter可能是最好的,但是如果你正在做一些基于终端的ncurses也是一种选择。如果你正在使用图形或GUI,你正在使用的库(PyGame,GTK,Wx,Qt,Pyglet等)将有自己的方式来处理键盘事件。