首页 > Java > java教程 > JavaFX FXML 控制器:构造函数或 `initialize()` 方法 - 哪一个用于初始化?

JavaFX FXML 控制器:构造函数或 `initialize()` 方法 - 哪一个用于初始化?

Barbara Streisand
发布: 2024-12-02 04:20:10
原创
511 人浏览过

JavaFX FXML Controllers: Constructor or `initialize()` Method – Which One for Initialization?

JavaFX FXML 控制器:构造函数与初始化方法

了解初始化顺序

将 JavaFX 与 FXML 结合使用时,了解控制器的初始化顺序是至关重要的。创建 FXML 文件中指定的控制器类的实例后,会发生以下步骤:

  1. 构造函数调用: 调用控制器的默认构造函数。
  2. FXML 字段填充: 控制器中用 @FXML 注释的任何字段都将使用中定义的相应组件进行填充FXML 文件。
  3. initialize() 方法调用: 控制器的initialize() 方法被执行。

构造函数与initialize() 方法控制器初始化

构造函数和initialize()方法在初始化控制器时具有不同的目的控制器:

  • 构造函数: 首先调用构造函数,并负责独立于 FXML 组件引用的任何初始化任务。
  • initialize()方法: 填充 FXML 字段后调用initialize() 方法。它提供了一个合适的机会来执行任何需要访问这些组件的后处理或附加初始化。

initialize() 方法访问 FXML 字段的重要性

访问FXML组件引用的initialize()方法至关重要。虽然构造函数无法访问这些引用,但initialize()方法可以使用它们来访问控件属性、设置事件侦听器或执行其他操作。

用法示例

在提供的代码示例,输出演示了此行为:

  • MainViewController 的构造函数打印“第一个。”
  • initialize() 方法打印“第二个。”

此序列说明了在填充 FXML 字段后调用了initialize() 方法,并且该方法是在适当的地方使用这些引用进行控制器初始化。

以上是JavaFX FXML 控制器:构造函数或 `initialize()` 方法 - 哪一个用于初始化?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板