【发布时间】:2013-07-08 21:18:38
【问题描述】:
我很困惑 MVC 如何与 GUI swing 应用程序一起工作。我使用过 PHP MVC,但那是完全不同的。我了解 MVC 代表什么。但是让我感到困惑的是在 GUI swing 编程中这样做的不同变体。很难从网络上的不同文章中得出特定的结论。谁应该知道谁?我的意思是模型视图和控制器之间的关系是什么?控制器应该知道模型和视图吗?如果可能的话,我想举一个简单的例子来说明这一点(比如会更新标签的简单按钮)
如果我不要求更多,我想获得关于编写 Swing 的 MVC 书的建议。
【问题讨论】:
-
这是一个宽泛的问题,以前在这个网站上也有人问过类似的问题。你搜索过它们吗?
-
是的,我几乎都看完了。但我迷路了。很难得出任何结论。不同的来源推荐了模型视图和控制器如何使用数据的不同方式。就像我正在阅读的某个地方一样,控制器将调解模型和视图。我在某处阅读视图可以看到模型并自行更新。我很困惑
-
我想看一个简单的例子,它只是一个按钮和标签,它将保持正确的 MVC 模式。从一开始就掌握它会很有帮助。正如我已经说过的那样,我已经不知所措了。
-
如果您拥有的只是“一个按钮和一个标签”而实际上并没有做任何有用的事情,那么您所拥有的只是一个视图,而您实际上并没有模型。您首先考虑 View 部分的事实表明您遇到了错误的问题。您应该知道您的模型是什么,然后为该模型创建一个视图。 MVC 部分只是保持模型与模型表示的适当分离。
-
对于 Swing-MVC 相关的答案with code,请查看以下链接:Using a JFileChooser with Swing GUI classes and listeners:我创建的一个小型 Swing MVC 示例。 GUI not working after rewriting to MVC: 垃圾神的榜样,我怎么夸都不为过。你不应该阅读它,而应该学习它。 JAVA Swing MVC - Main Controller?
标签: java swing design-patterns model-view-controller