刚刚开始在tkinter中获得MVC的概念。我编写了这个简单的程序,我正在寻找反馈。没有错误,但我不知道我是否把它设置正确。
import tkinter as tk
class Model():
def __init__(self):
self.list = ["email", "sms", 'voice']
class View(tk.Frame):
def __init__(self, parent, controller):
self.controller = controller
tk.Frame.__init__(self, parent, bg="yellow", bd=2,
relief=tk.RIDGE)
self.parent = parent
self.pack()
self.labelVariable=tk.StringVar()
self.output=tk.Label(self, textvariable=self.labelVariable,
bg="orange", fg="white")
self.output.pack()
self.hello = tk.Button(self, text="Show", command=
self.controller.hello_Button_Pressed, bd=2,
relief=tk.RIDGE)
self.hello.pack(side="left")
class Controller():
def __init__(self):
self.root = tk.Tk()
self.model = Model()
self.view = View(self.root, self)
self.root.title("MVC example")
self.root.geometry("250x350")
self.root.config(background="LightBlue4")
self.root.mainloop()
def hello_Button_Pressed(self):
self.view.labelVariable.set(self.model.list)
if __name__ == '__main__':
c = Controller()
发布于 2020-01-05 23:54:27
代码看起来很适合MVC。我不是专家,但我有很好的经验来证明这很好。
https://codereview.stackexchange.com/questions/234635
复制相似问题