JavaFX使用一个Loader加载两个不同的节点

时间:2014-08-08 12:16:38

标签: javafx

Everyone。我想问一下,我们可以使用一个加载器一次加载两个不同的FXML吗?实际上,我想知道是否可以加载两个fxmls,这样两个fxml可以在一个屏幕上同时显示。

    public class NodeLink extends Application {

@Override
public void start(Stage stage) throws Exception {

    FXMLLoader loader = new FXMLLoader();
    AnchorPane root = (AnchorPane)loader.load(getClass().getResource("StartPanel.fxml"));
    Group centralNode = (Group)loader.load(this.getClass().getResource("CentralNode.fxm."));
    root.getChildren().setAll(centralNode);
    //Group centralNode = FXMLLoader.load(getClass().getResource("CentralNode.fxml"));

    Scene scene = new Scene(root);

    stage.setScene(scene);
    stage.show();
}

如上所述,Group centralNode = ...此语句将导致错误,如下所示:

Exception in Application start method
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at   com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:367)...

那么,为什么这会导致错误?我们可以使用几个fxmls来组成一个屏幕吗? 非常感谢你!

0 个答案:

没有答案