【发布时间】:2019-11-01 20:11:13
【问题描述】:
我的系统打印了一个客户订单队列的 GUI。订单完成后,工作人员按下完成,所有商品都应在 GUI 上移动,移除弹出的商品。
格式不正确,但在我空闲时缩进是正确的。我在按下 Comlete 按钮时收到此错误,不知道如何解决。我对 tkinter 和 OOP 的经验很少
File "C:\Users\stecd\Desktop\NEA - Copy\Order Queue.py", line 68, in orderFulfilled
self.button = Label(master,text=item,width=30,height=5,bg="red")
NameError: name 'master' is not defined
代码:
class MyFirstGUI:
def __init__(self, master):
self.master = master
master.title("A simple GUI")
self.label = Label(master, text="This is our first GUI!")
self.label.pack()
self.completedButton = Button(master,text="Complete",width=30,height=5,bg="green")
self.completedButton.pack(side=BOTTOM)
self.completedButton.bind('<Button-1>', self.orderFulfilled)
for item in customerQueue.queue:
self.button = Label(master,text=item,width=30,height=5,bg="red")
self.button.pack(side=LEFT)
def orderFulfilled(self, event):
customerQueue.dequeue()
self.button.pack_forget()
for item in customerQueue.queue:
self.button = Label(master,text=item,width=30,height=5,bg="red")
self.button.pack(side=LEFT)
root = Tk()
my_gui = MyFirstGUI(root)
root.mainloop()
【问题讨论】:
-
你应该使用
self.master。
标签: python python-3.x oop tkinter