定期的に更新する必要があるTkinterにいくつかのフレームを作成したいと思います。ここ は、それらの上のコードです:クラスのPython属性エラー
from Tkinter import *
import time
import random
class KopfFrame:
def __init__(self,master):
frame = Frame(master,bg="tan")
frame.pack(side=TOP,expand=YES, fill=BOTH)
self.ZeitLabel = Label(frame)
self.ZeitLabel.pack(side=RIGHT, expand=NO,ipadx=2, ipady=2)
self.refresh()
def refresh(self):
self.ZeitLabel.configure(text=time.strftime("%H:%M:%S"))
# call this function again in 5 seconds
#print(self)
self.after(5000, self.refresh)
root = Tk()
K = KopfFrame(root)
root.mainloop()
しかし、私はそれを実行すると、私はエラーを持っている:
AttributeError: KopfFrame instance has no attribute 'after'
私は、呼び出し元の仕方が問題であることを、かなり確信しています。だから誰かが私を助けることができれば、私は機能のための良いチュートリアルのヒント、クラスの使い方に感謝するでしょう。
'self.after()'に何を期待しましたか?あなたのクラスはそのメソッドを定義していません。おそらく何か* else *にそのようなメソッドがありますか? –