我正在使用 swing 开发一个 gui 系统,我正在尝试遵循 Model-View-Controller 模型。在实现我的事件系统时,我有点困惑,以便在 gui 上发生事情时视图可以与控制器通信。
我的 gui 是动态的,因此我有一个包含其他 JPanel 的侧面板。其中之一恰好是一个 LoginPanel,当有人尝试登录时它会抛出一个 LoginEvent。因为我希望我的 SidePanel 是动态的,所以 SidePanel 不知道 LoginPanel 的存在,它只是在绘制它被告知要绘制的内容。
当我启动程序时,模型和视图分别启动,控制器获得模型和视图的实例。
使用 MVC 系统,当 LoginPanel 在我的 gui 上是动态的并且始终不存在时,如何告诉 LoginPanel 控制器(实现 LoginEventListener)想要监听它?