特金特类调用问题



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

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)

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

最新更新