【发布时间】:2013-11-13 17:08:24
【问题描述】:
我正在使用 swing 开发一个 gui 系统,并且我正在尝试遵循模型-视图-控制器模型。在实现我的事件系统时,我有点困惑,以便在 gui 上发生事情时视图可以与控制器通信。
我的 gui 是动态的,因此我有一个包含其他 JPanel 的侧面板。其中一个碰巧是一个 LoginPanel,当有人尝试登录时它会抛出一个 LoginEvent。因为我希望我的 SidePanel 是动态的,所以 SidePanel 不知道 LoginPanel 的存在,它只是在绘制它被告知要绘制的内容。
当我启动程序时,模型和视图是分开启动的,并且控制器会获得模型和视图的实例。
使用 MVC 系统,当 LoginPanel 在我的 gui 上是动态的并且不始终存在时,我如何告诉 LoginPanel 控制器(实现 LoginEventListener)想要监听它?
【问题讨论】:
-
嗯,你的问题是?
-
使用
Strings 作为密码也是不好的做法:stackoverflow.com/questions/8881291/… -
@home 我的视图有一个侧面板,侧面板有一个登录面板。 LoginPanel 存储 LoginListeners,并在有人尝试登录时将事件发送给这些侦听器。我希望侧面板是动态的,因此它不应该知道 LoginPanel 存在,那么如果 >View 不一定知道 LoginPanel 存在?可能我只是对 MVC 系统的思考有误,但看来我所做的确实有缺陷。
标签: java swing events model-view-controller