小编Rom*_*eau的帖子

FXML中的JavaScript脚本

我试图从FXML 参考运行以下示例:

这个例子包括在JavaScript脚本中声明一个String变量,然后在FXML中使用它与$运算符一起在Label中显示String.

问题是当我用Java 8u40运行这个例子时,Label是空的而不是显示声明的String.

JavaFxComponent.java:

public class JavaFxComponent extends VBox {
    public JavaFxComponent() throws Exception {
        FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/JavaFxComponent.fxml"));
        fxmlLoader.setRoot(this);
        fxmlLoader.load();
    }
}
Run Code Online (Sandbox Code Playgroud)

JavaFxComponent.fxml:

<?xml version="1.0" encoding="UTF-8"?>
<?language javascript?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<fx:root type="javafx.scene.layout.VBox" xmlns="http://javafx.com/javafx/8"
    xmlns:fx="http://javafx.com/fxml">
    <fx:script>
        var myText = "This is the text of my label.";
    </fx:script>
    <Label text="$myText" />
</fx:root>
Run Code Online (Sandbox Code Playgroud)

JavaFxTest:

public class JavaFxTest extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setScene(new Scene(new JavaFxComponent()));
        primaryStage.show(); …
Run Code Online (Sandbox Code Playgroud)

javafx javafx-8

7
推荐指数
1
解决办法
2164
查看次数

标签 统计

javafx ×1

javafx-8 ×1