我试图创建一个程序,当我在窗口上按下escape时出现一个标签"你按Escape"。
from tkinter import *
class the_Esc_test(Frame):
def __init__(self):
Frame.__init__(self)
self.start_number=0
self.pack(expand=YES, fill=BOTH)
self.master.title("Esc program")
self.master.geometry ("600x600")
self.bind("<Escape>", self.EscPressed)
def EscPressed(self):
self.start_number+=1
if self.start_number==1:
self.lbl1=Label(self, text="You pressed Escape")
self.lbl1.grid(row=6, column=6, sticky=W)
elif self.start_number==2:
self.lbl1.grid_forget()
self.start_number=0
start=the_Esc_test()
它不起作用,但Python不会显示任何错误。
有人能告诉我原因吗?
答案 0 :(得分:1)
我能够让它像这样工作
from Tkinter import *
class the_Esc_test(Frame):
def __init__(self):
Frame.__init__(self)
self.start_number=0
self.pack(expand=YES, fill=BOTH)
self.master.title("Esc program")
self.master.geometry ("600x600")
self.master.bind("<Escape>", self.EscPressed)
def EscPressed(self, event):
print "called", event.keysym
start=the_Esc_test()
start.mainloop()