【发布时间】:2012-09-18 13:07:13
【问题描述】:
我正在开发一个 MVC 架构中的项目。它应该是一个简单的应用程序来管理一些客户。
有 MainModel、MainView 和 MainController 类,它们使主窗口显示客户表的内容,并让用户插入、删除或编辑客户。
我的问题是插入和编辑按钮应该显示一些对话框窗口让用户插入和编辑一些文本值,我有一些疑问。
我想问你一些问题:
- 我应该为每个对话窗口使用 MVC 架构吗?
-
如果是,我尝试过这样做,但我的对话框窗口是模态的,所以我的代码运行模型,运行视图,但它在视图中被阻止并且它不运行控制器类。我该如何解决?
例如,它在“new InsertCustomerController...”指令中被阻止:
CustomerModel customerModel = new CustomerModel(); InsertCustomerView insertCustomerView = new insertCustomerView(customerModel); new InsertCustomerController(insertCustomerView, customerModel);
非常感谢。
【问题讨论】:
-
我唯一的想法是定义一个简单的方法来在他们的视图中将我的对话框窗口设置为模态并在控制器构造函数中调用它,但我不知道它是否可以。我什至不知道我是否应该在我的对话窗口中使用 MVC...
-
如果不查看更多代码,很难判断发生了什么。 InsertCustomerView 和 InsertCustomerController 中有什么?尝试发布SSCCE。我很难理解您的问题以及到底是什么问题。
-
您不一定需要多个控制器。控制器的目的是将事物路由到视图和模型。它实际上是从键盘到您的视图的桥梁。主控制器可以服务附加项目。另一种选择是扭转局面。创建一个新的控制器实例并创建模型和视图,视图代码将执行您“卡住”的对话框。
-
附注:MVC 不是架构。这是一种设计模式。
标签: java swing model-view-controller modal-dialog