2017-10-04 2 views
0

私はすべての可能なピザ画像を通じてボタンの画像サイクルを持つようにしたいが、私はそれをクリックしたときに代わりに、次のエラーがスローされます。Tkinterでイメージをどのように循環させるのですか?

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() 
+0

を使用します'buttonInitialize'は' config'メソッドを持っていますか? –

+0

私はそれを与えることはできますか? –

答えて

1

代わりのself.config(繰り返しの部分を考慮する方法を見つけ出すことができなかった、だと思いますなぜself.printButton.config()

+0

素敵な、ありがとう。 –

関連する問題