Javafx 将fxml加载到另一个fxml的主体窗格的中心

Javafx 将fxml加载到另一个fxml的主体窗格的中心,javafx,fxml,fxmlloader,Javafx,Fxml,Fxmlloader,我试图将一个fxml(test.fxml)调用到正文窗格中央的另一个fxml(main.fxml)中。我实际上是在main.fxml的控制器类中这样做的。无论我尝试了多少种不同的方法,我都无法设置中心元素。 要求是,我需要在主fxml文件的树结构上单击鼠标右键来显示不同的fxml文件。 但是当我调用这个方法时,我得到了异常“location is required”。有什么我需要做的吗?请帮忙 main.fxml @FXML TreeView<String> mainTree

我试图将一个fxml(test.fxml)调用到正文窗格中央的另一个fxml(main.fxml)中。我实际上是在main.fxml的控制器类中这样做的。无论我尝试了多少种不同的方法,我都无法设置中心元素。 要求是,我需要在主fxml文件的树结构上单击鼠标右键来显示不同的fxml文件。
但是当我调用这个方法时,我得到了异常“location is required”。有什么我需要做的吗?请帮忙

main.fxml

@FXML
    TreeView<String> mainTree;    
    @FXML
    BorderPane rootLayout;    
    @FXML
    AnchorPane dynamicContent;    
    ContextMenu cntxtMenu;

//Method where i am trying to set main.fxml center body 

 public void showAttributeScreen(){
        FXMLLoader loader = new FXMLLoader(scriptbuilder.controller.TestController.class.getResource("view/test.fxml"));
        AnchorPane pane = new AnchorPane();
        try{
            pane = (AnchorPane) loader.load();
            rootLayout.setCenter(pane);
        }
        catch(Exception e){

        }
    }

test.fxml 

<AnchorPane id="AnchorPane" prefHeight="400.0" prefWidth="600.0" xmlns:fx="http://javafx.com/fxml/1" fx:controller="scriptbuilder.controller.TestController">
    <Label alignment="BASELINE_CENTER" text="Hi" />
</AnchorPane>
@FXML
树景主树;
@FXML
边界窗格根布局;
@FXML
锚烷动态内容;
上下文菜单cntxtMenu;
//方法,尝试在其中设置main.fxml中心体
public void showAttributeScreen(){
FXMLLoader=newFXMLLoader(scriptbuilder.controller.TestController.class.getResource(“view/test.fxml”);
锚烷窗格玻璃=新锚烷();
试一试{
窗格=(锚烷)加载程序。加载();
rootLayout.setCenter(窗格);
}
捕获(例外e){
}
}
test.fxml

“location is required”(位置是必需的)仅表示FXML资源的路径错误(并且
getResource()
返回
null
)。您给出的路径将在包
scriptbuilder.controller.view
中查找test.fxml。非常感谢!我现在明白了它的工作原理,你的建议也起到了作用。我把代码改成了这个。root=fxmloader.load(ScriptBuilder.class.getResource(“view/GroupDataPrepAndMatchKey.fxml”);“location is required”(位置是必需的)仅表示FXML资源的路径错误(并且
getResource()
返回
null
)。您给出的路径将在包
scriptbuilder.controller.view
中查找test.fxml。非常感谢!我现在明白了它的工作原理,你的建议也起到了作用。我把代码改成了这个。root=fxmloader.load(ScriptBuilder.class.getResource(“view/GroupDataPrepAndMatchKey.fxml”);