带GUI应用程序的MVC模型

时间:2014-02-11 17:43:59

标签: java user-interface model-view-controller model controller

我创建了一个Java应用程序,可以为一组玩家保留篮球统计数据。我第一次制作程序时,GUI元素创建了在同一个类中处理的动作,然后修改了玩家。

我有兴趣按照MVC模型重写程序。我假设我需要一个视图或GUI,然后是模型(播放器)和控制器。

控制器对我来说很难理解。如何将GUI中发生的事情传递给控制器​​?例如,在旧程序中,我有5 JComboBoxes,我将Array int以跟踪活跃玩家。如果以他的名义记录了一个事件,那么当前选择的玩家将更新他的统计数据。

我如何使用MVC模型进行此操作,我是否需要每个播放器的Controller实例?

这是旧GUI的图片,以便您可以看到程序的工作方式。

StatKeeper program

感谢您提出任何建议。

1 个答案:

答案 0 :(得分:0)

您可以通过各种方式实现MVC架构。您可以将控制器作为独立实例并接受模型和视图,而不是为每个玩家(模型)设置控制器实例。所以,伪代码中的一个实现:

playerList = new model();
gui    = new view(playerList);
handles = new controller(playerList, gui);