【问题标题】:How many views/controllers (JavaFX MVC pattern)多少个视图/控制器(JavaFX MVC 模式)
【发布时间】:2018-05-24 08:58:20
【问题描述】:

我是 JavaFX 应用程序中的 MVC 模式的新手。我正在学习并尝试将此模式应用于我的 JavaFX 应用程序。但在我所有的搜索中,我都找不到接下来的答案。

在我的应用程序中,我有一个 BorderPane 对象,其中包含一个 TableView 对象、一个 ImageView 对象、一些 Button 实例和其他控件,例如 TextField 对象等。

现在,我还没有控制器、模型和视图的 FXML 文件的代码,只有一些草稿,因为我的问题是:
假设我想要一个控制器对于每个不同的视图,我应该创建多少个控制器和视图来处理 BorderPane 对象中显示的数据?我的意思是,我应该为控制器和视图使用的粒度和详细程度是多少?我想到的替代方案是:

  1. 一个视图(FXML 文件)用于TableView 对象和与该视图关联的控制器,一个视图(FXML 文件)用于Button 对象和与其关联的控制器,以及一个视图(FXML 文件)用于ImageView 对象和与之关联的控制器;
  2. 细节较少,即TableViewImageView 对象的一个​​视图和一个控制器,以及一个带有关联控制器的按钮视图;
  3. 更不用说细节,这是一个用于 BorderPane 对象及其包含的所有 UI 元素的单个 FXML 文件,以及一个控制所有事件和与模型绑定的控制器。

一开始,我希望有第三个选项,但我在一些示例中看到单个 UI 元素有一个控制器和一个视图,而不是包含所有 JavaFX 控件的根 UI 元素。

P.S.:英语不是我的母语,希望我解释清楚。

【问题讨论】:

    标签: java model-view-controller javafx fxml


    【解决方案1】:

    JavaFX 已经遵循 MVC 设计模式,您可以选择为每个 javafx 设计文件 (.fxml) 创建一个控制器。我建议为每个“.fxml”文件创建一个控制器。 Scene Builder 提供了一种有组织的方式来执行此操作,您可以在其中创建设计文件并指定“控制器类”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-20
      • 2011-09-12
      • 1970-01-01
      • 1970-01-01
      • 2014-12-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多