我正在测试和发现 JavaFX。
在有关控制器的 JavaFX FXML 文档中,据说如果控制器有public void initialize()
方法,则在加载 FXML 图形后调用它。
是否可以以脚本方式从 FXML 文件中执行类似的操作?我尝试了类似的方法,但initialize()
根本没有被调用。
<?xml version="1.0" encoding="UTF-8"?>
<?language javascript?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.AnchorPane?>
<AnchorPane xmlns:fx="http://javafx.com/fxml">
<fx:script>
importClass(java.lang.System);
function initialize() {
System.out.println('hello');
}
</fx:script>
<Button text="Button" />
</AnchorPane>
我错过了什么,还是无法从 FXML 文件中做到这一点?
是否有一种解决方法,以便 FXML 文件可以嵌入一些代码,这些代码将在加载后自动执行(不使用外部 Java 控制器文件)?