如何从另一个包中找到fxml?

时间:2014-04-07 16:49:15

标签: javafx fxml

我创建了一个简单的JavaFX应用程序。

enter image description here

它有两个包,主类JFXTest2.java位于good包中,而fxml和它的控制器位于JFXTest2包中。

现在的问题是我无法在主类中加载fxml。我试过加载 像这样的fxml:

Parent root = FXMLLoader.load(getClass().getResource("jfxtest2.Screen.fxml"));

Parent root = FXMLLoader.load(getClass().getResource("jfxtest2/Screen.fxml"));

以及

Parent root = FXMLLoader.load(new URL("/jfxtest2/Screen.fxml"));

但它们都没有工作。所以我应该如何在JFXTest2类中加载fxml,该类是main类或application class

3 个答案:

答案 0 :(得分:15)

尝试

Parent root = FXMLLoader.load(getClass().getResource("/jfxtest2/Screen.fxml"));

答案 1 :(得分:3)

您需要使用

getClass().getClassLoader().getResource("/jfxtest2/Screen.fxml")

答案 2 :(得分:-1)

对我来说,除此之外,什么也没有做:

Parent root = FXMLLoader.load(getClass().getResource("..//jfxtest2//Screen.fxml"));