关于self.controller =控制器。控制器总是指主程序吗?

时间:2016-03-18 21:41:02

标签: python-3.x tkinter

我已经从这里读过(Tkinter! Understanding how to switch frames)关于self.controller = controller。我只是python和tkinter的新手,我只想问'控制器'是否总是引用主程序?如果没有,请举个例子。感谢

1 个答案:

答案 0 :(得分:0)

不,控制器并不总是参考主程序。它可以引用您想要的任何对象。在您引用的示例中,使用该应用程序是最简单,最短的解决方案。

例如:

class Model(...): ...
class Controller(...): ...
class View(tk.Tk):
    def __init__(self, controller):
        self.controller = controller
        tk.Tk.__init__(self)
        ...
    ...
class App(...):
    def __init__(...):
        ...
        model = Model(...)
        controller = Controller(..., model=self.model)
        view = View(..., controller=self.controller)
        controller.add_view(view)
        ...
    ,,,

if __name__ == "__main__":
    app = App()