當我嘗試運行我的代碼,我得到這個錯誤:Tkinter的Python函數需要1個參數,給出2
File "./countdown.py", line 36, in <module>
app = Application(root)
File "./countdown.py", line 16, in __init__
self.create_buttons(self)
TypeError: create_buttons() takes exactly 1 argument (2 given)
這裏是我的代碼:
import Tkinter as tk
class Application(tk.Frame):
"""Countdown app - simple timer"""
def __init__(self, master):
"""initialize frame"""
tk.Frame.__init__(self, master)
#super(Application, self).__init__(master)
self.grid()
self.create_buttons(self)
def create_buttons(self):
self.startBttn = Button(app, text = "Start")
self.startBttn.grid()
self.stopBttn = Button(app, text = "Stop")
self.stopBttn.grid()
self.resetBttn = Button(app, text = "Reset")
self.resetBttn.grid()
### Main Code ###
# create the root window using Tk - an object of tkinter class
root = tk.Tk()
# modify the prog. window (set size, title, etc.)
root.title("Countdown")
root.geometry("200x100")
#instantiate Application
app = Application(root)
我一直在尋找這個答案有一段時間,但是還沒有能夠將其他人的解決方案應用於我的代碼 - 任何想法?如果我刪除tk。在類之前應用程序聲明我得到一個錯誤,說幀未找到。如果我使用super(Application,self).__ init __(master)而不是上面的行,我得到一個類型錯誤,必須是類而不是類對象。
而'app.mainloop()'用於要繪製的窗口和要處理的事件。 –
@AbhishekBalajiR:啊,是的,這也是必需的,謝謝。 – mhawke
這工作 - 謝謝你的解釋 – potatopie