【发布时间】:2016-09-08 14:58:59
【问题描述】:
我是 tkinter 的新手,似乎无法理解 oop,我认为这就是问题所在。
这是我的代码:
from Tkinter import *
from PIL import ImageTk, Image
images = {
"first" : "miog.png",
"combat" : "mio kicking ass.jpg"
}
class App:
def __init__(self, master, image_dict):
frame = Frame(master)
frame.pack()
self.pic = ImageTk.PhotoImage(Image.open(image_dict["first"]))
self.image = Label(frame, image = self.pic)
self.image.pack(side = TOP)
self.button = Button(frame, text="Start", command=self.combat())
self.button.pack(side = RIGHT)
def combat(self):
self.button.destroy()
window = Tk()
window.title("aaa")
app = App(window, images)
window.mainloop()
我从控制台得到的错误是:
AttributeError: App instance has no attribute 'button'
我不明白,在初始化实例时(在 init 中)不是按钮吗?
我为类似问题找到的所有其他答案都与缩进有关,但我确保仔细检查所有内容(所有选项卡以及我认为它们应该在的所有位置)。
【问题讨论】:
标签: python python-2.7 tkinter