我对此有疑问。 我是Python tk的新学习者。通常使用
class myApp :
def __init__(self, gui,) :
self.root = gui
然后通过
销毁它self.root.destroy()
但是我得到了这段代码,我怎么能破坏这个窗口
from travelToolbox import readItems, readTransactions
import tkinter as tk
class myApp(tk.Tk):
def __init__(self, itemRecords) :
tk.Tk.__init__(self)
self.itemRecords = itemRecords
self.grid()
self.entry = tk.Entry(self)
self.entry.grid(column=1,row=0)
button1 = tk.Button(self,text="Show",command=self.showStockItem)
button1.grid(column=2,row=0)
button2 = tk.Button(self,text="Quit",command=self.quitit)
button2.grid(column=1,row=1)
label = tk.Label(self, anchor="w", text='Item ID')
label.grid(column=0,row=0)
我试过破坏但是我回来了
AttributeError: '_tkinter.tkapp' object has no attribute 'root'
请帮我解决这个问题。非常感谢。
答案 0 :(得分:3)
由于MyApp
继承自tk.Tk
,您可以在destroy()
上致电self
。
也许是这样的:
import tkinter as tk
class MyApp(tk.Tk):
def __init__(self):
super().__init__()
tk.Button(self, text='quit', command=self.quit).pack()
self.mainloop()
def quit(self):
self.destroy()
if __name__ == '__main__':
MyApp()