回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在用tkinter编写python代码。我想通过按“j”将标签set\ U hour的状态更改为“活动”。每次我运行我的代码,我得到一个错误,说设置\小时没有定义。我需要在这里使用“self”吗?为什么你能解释一下。谢谢</p>
<pre><code>class SetClock:
def __init__(self, parent):
self.myParent = parent
self.current_datetime_label = tkinter.Label(root, text=datetime.datetime.now(), bg = "black", foreground="white").grid(row=1)
#current_time_label.pack()
self.menu_label = tkinter.Label(root, text="Menu", bg="sky blue", foreground="black",width=18).grid(row=2)
self.set_day = tkinter.Label(root, text="Set Day", bg="blue",foreground="white",width=9,state="active").grid(row=2, column=1)
self.set_hour = tkinter.Label(root, text="Set Hour",bg="blue",foreground="white",width=9).grid(row=2, column=2)
self.set_mintutes = tkinter.Label(root, text="Set Minutes", bg="blue",foreground="white",width=10).grid(row=2, column=3)
self.exit_label = tkinter.Label(root, text="Exit", bg="black", foreground="white").grid(row=2, column=4)
self.day_menu_label = tkinter.Label(root, text="Day",bg="sky blue",width=18).grid(row=3)
#menu_label.pack(side="right")
#current_time_label.pack()
def navigate_menu(event):
current_pressed = str(event.char)
print("pressed", current_pressed)
if current_pressed is 'j':
print("ok")
set_hour.config(state="active")
root = Tk()
#frame = Frame(root)
setclock = SetClock(root)
root.title("Set Clock")
root.minsize(width=500,height=500)
root.bind("<Key>",SetClock.navigate_menu)
root.mainloop()
</code></pre>