0

我需要帮助。我正在努力让我的观察者在 java 中工作。有人可以使用 MODEL-VIEW-CONTROLLER 架构向我解释如何从视图到控制器创建和观察者。

这是因为如果我按下视图上的按钮,动作事件必须调用通知控制器该按钮被按下。

为此,我正在实施观察者以最大程度地减少类耦合。

我有一个控制器类、视图(使用 JFrame 的 Swing)和一个包含主要方法的应用程序类。

我尝试实现它,以便 Controller 实现 Observer 并且 View 扩展 Observable。

触发单击按钮的事件后,除了 notifyObservers("OBJECT") 之外的所有代码都被调用。它消失在 java 库中的某个地方。

任何帮助都感激不尽。

4

2 回答 2

2

模型应该扩展 observable 并且视图应该实现观察者(您希望视图依赖于模型)。在更改模型的状态后,您需要调用 setChanged 来强制通知观察者。

于 2011-08-29T08:00:12.997 回答
0

仔细检查,您的控制器是否真的在观察/收听(正确的)按钮实例。使用调试器并设置一些断点来检查是否notifyObservers被调用以及在接收通知。

于 2011-08-29T06:20:16.030 回答