1

我试图在我的 Tkinter gui 中添加一个进度条,但我一直被一个我不是 100% 确定如何定义的问题所困扰。我的程序就是这样设置的。

class MAIN(object):
    def __init__(self, *args, **kwargs)
        tkinter stuff...

root = tk.Tk()
app = MAIN(root)
app.mainloop()

然后我尝试使用这个例子添加一个进度(它自己工作)。这段代码是这样设置的。

class MAIN(tk.Tk):
    def __init__(self, *args, **kwargs)
        tk.Tk.__init(self, *args, **kwargs)
        tkinter stuff....

app = MAIN()
app.mainloop()

如果我将这些程序中的任何一个更改为其他程序的格式,它们都会引发错误。理想情况下,我希望能够保持我的格式(第一个格式)并能够以我的格式运行示例,这样我就不必更新很多遗留代码。

帮助/解释将不胜感激。

编辑:这是错误。

TypeError: unbound method __init__() must be called with Tk instance as first argument (got SampleApp instance instead)
4

1 回答 1

0

我的问题是我不了解类中的继承,并且在尝试使用进度条之前我的程序不需要对tk.Tk.__init__. 因此,该问题的解决方案是class MAIN(object):class MAIN(tk.Tk):工作示例中的替换。我的进度条仍然无法正常工作,现在还有另一个窗口,但程序运行。

于 2012-06-29T19:51:58.410 回答