我的问题是:在Python脚本中,我使用以下代码创建一个窗口:
class Layout(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="Ricerca partite")
self.connect("key-press-event",self.GetKeypress)
self.set_default_size(265, 437)
self.move(700,300)
# other instructions
如果按下了“+”,“ - ”或“Return”键之一,我必须执行相应的操作,否则不执行任何操作。 如何检查其中一个键是否被按下?应该如何编写“GetKeypress()”函数?
答案 0 :(得分:1)
您可以尝试此操作(假设您已导入gtk
和gdk
):
def GetKeypress(self,event):
keyval_name = gtk.gdk.keyval_name(event.keyval)
if keyval_name == '+' or keyval_name == '-' or keyval_name == 'Return':
#continue your code here
我认为,既然你想在按下键后执行相应的操作,那么你应该将self.connect("key-press-event",self.GetKeypress)
更改为
self.connect("key-release-event",self.GetKeypress)
。
您可以在documentation。
中找到有关此事的更多信息