【发布时间】:2018-05-24 08:58:20
【问题描述】:
我是 JavaFX 应用程序中的 MVC 模式的新手。我正在学习并尝试将此模式应用于我的 JavaFX 应用程序。但在我所有的搜索中,我都找不到接下来的答案。
在我的应用程序中,我有一个 BorderPane 对象,其中包含一个 TableView 对象、一个 ImageView 对象、一些 Button 实例和其他控件,例如 TextField 对象等。
现在,我还没有控制器、模型和视图的 FXML 文件的代码,只有一些草稿,因为我的问题是:
假设我想要一个控制器对于每个不同的视图,我应该创建多少个控制器和视图来处理 BorderPane 对象中显示的数据?我的意思是,我应该为控制器和视图使用的粒度和详细程度是多少?我想到的替代方案是:
- 一个视图(FXML 文件)用于
TableView对象和与该视图关联的控制器,一个视图(FXML 文件)用于Button对象和与其关联的控制器,以及一个视图(FXML 文件)用于ImageView对象和与之关联的控制器; - 细节较少,即
TableView和ImageView对象的一个视图和一个控制器,以及一个带有关联控制器的按钮视图; - 更不用说细节,这是一个用于
BorderPane对象及其包含的所有 UI 元素的单个 FXML 文件,以及一个控制所有事件和与模型绑定的控制器。
一开始,我希望有第三个选项,但我在一些示例中看到单个 UI 元素有一个控制器和一个视图,而不是包含所有 JavaFX 控件的根 UI 元素。
P.S.:英语不是我的母语,希望我解释清楚。
【问题讨论】:
标签: java model-view-controller javafx fxml