Я создаю приложение tkinter и пытаюсь реализовать шаблон контроллера представления модели.
У меня есть класс View:
class View(Frame):
def __init__(self, master):
""" Set up and display the user interface """
Frame.__init__(self, master)
self.menubar = Menu(master)
self.menubar.add_command(label="Login")
self.menubar.add_command(label="Register")
self.menubar.add_command(label="Exit", command=master.quit)
self.master = master
self.master.config(menu=self.menubar)
, и в моем контроллере я хотел бы установитьопция 'command' для элемента меню 'Login' выглядит так (потому что я не хочу, чтобы мой просмотр обрабатывал логику входа в систему):
class Controller:
def __init__(self):
self.root = Tk()
self.model = Model()
self.view = View(self.root)
---> self.view.menubar [set command for 'login 'item = self.test ()] <- здесь я пытаюсь понять синтаксис. Документация по Tkinter не очень полезна, и большинство сообщений в блогах предлагают очень упрощенные примеры. Я пробовал что-то вроде: <code>self.view.menubar.entryconfigure(0, command=self.test) но не повезло.
def run(self):
self.root.title("Password Manager Application")
self.root.mainloop()
def test(self):
print("Asdf")
Спасибо за помощь, Марк