swing如何在Java MVC中处理事件
我正在用Java创建我的第一个“更大”的应用程序。因为MVC是我所知道的唯一模式,所以我决定使用它。但是这个概念有问题
比如说。我需要一个Action
(或者通常是事件)从两个位置(从帧中的Button
和MenuItem
)触发。它必须在至少两个位置和模型中进行更改
我有一些想法,但它们似乎是错的:
- 将控制器对象传递给每个视图元素,以便新创建的操作可以使用控制器的方法修改应用程序的其余部分李>
- 使控制器静止(出于相同的原因)
- 使控制器仅为模型侦听器
请告诉我如何建造它。或者给我一些链接到一些易于分析的应用程序
我的项目的来源在这里,如果有人想看看:https://github.com/Arrvi/ColorExtractor
# 1 楼答案
使用^{} 封装功能以供菜单和按钮等不同组件使用是正确的。列举了一系列例子。关于MVC,回想一下Swing使用了separable model architecture,检查了here。实际上,用户是控制器,而不是每个交互都需要通过应用程序的控制器