【发布时间】:2017-10-04 02:51:18
【问题描述】:
我想让按钮的图像循环显示所有可能的披萨图像,但是当我单击它时会引发以下错误:
self.config(image=next(self.images))
AttributeError: 'buttonInitialize' object has no attribute 'config'
这是代码。我知道这很丑,对不起。我几乎不懂python类,所以我不知道如何分解重复部分
from tkinter import *
from itertools import cycle
class buttonInitialize:
def __init__ (self,enabler):
frame=Frame(enabler)
frame.pack()
pizzaList=[]
pizzaList.append(PhotoImage(file="Cheese.png").zoom(10))
pizzaList.append(PhotoImage(file="AvocadoWSauce.png").zoom(10))
pizzaList.append(PhotoImage(file="AvocadoWCheese.png").zoom(10))
self.images=cycle(pizzaList)
self.printButton=Button(frame,image=pizzaList[0] ,command=self.nextPizza)
self.printButton.pack(side=LEFT)
def nextPizza(self):
self.config(image=next(self.images))
root=Tk()
c=buttonInitialize(root)
root.mainloop()
【问题讨论】:
-
为什么你认为
buttonInitialize有一个config方法? -
我可以给它一份吗?
标签: python python-3.x class tkinter