Java场景生成器场景改变,不同的包

时间:2018-05-15 18:55:44

标签: java javafx scenebuilder

我正在处理JavaFX场景构建器。我的问题是,当场景的fxml文件在另一个包中时,我无法找到如何更改场景。我想我必须回到目录路径,但我不知道如何在Java中做这件事(像位置字符串中的../这样的东西在这里不起作用)。

那么,我如何能够回到目录路径,或者以其他方式如何改变我的场景而不将它们全部放入一个包中?

P.S。我必须改变场景,然后再回到上一个场景。

我改变场景的方法:

 public void sceneLoader(ActionEvent event, String path) throws IOException {
        Parent startPageParent1 = FXMLLoader.load(getClass().getResource(path));
        Scene startPageScene1 = new Scene(startPageParent1);
        Stage appStage1 = (Stage) ((Node) event.getSource()).getScene().getWindow();
        appStage1.setScene(startPageScene1);
        appStage1.show();
    }

然而,我尝试做的事情只有在我将第二个xfml文件传输到同一个包中并从位置字符串中删除包名时才会起作用(当它类似于" FXMLAddGroup.fxml"但不喜欢" otherWindows / FXMLAddGroup.fxml")虽然我有很多fxml文件,我想把它们分成不同的包:

    addGroup.setOnAction(new EventHandler<ActionEvent>(){
            @Override
            public void handle(ActionEvent event){ 
                try{sceneLoader(event, "otherWindows/FXMLAddGroup.fxml");
                    }
                catch(IOException ex){
                    System.out.println("Error: can not open the addGroup window");
                    }
                }
            }); 

photo of my packages

0 个答案:

没有答案