2016-12-07 59 views
0

我是JavaFX的新手,虽然我想加载fxml文件,但我使用的是波纹管代码。如何设置javaFX中的fxml文件的位置?

FXMLLoader loader=new FXMLLoader(); 
loader.setLocation(Main.class.getResource("view/secondAttempt.fxml")); 

我很好奇有关设置位置的新方法。我不喜欢用

Main.class.getResource("view/secondAttempt.fxml") 

是否有设置该fxml文件的位置,任何简单的方法? 我正在寻找一种不需要记住如此多信息以使用fxml文件的新解决方案。例如:

loader.setLocation("C:/view/secondAttempt.fxml")); 
+0

我已经找到了更短的方式加载'fxml'文件。 'loader.setLocation(的getClass()。的getResource( “观看/ secondAttempt.fxml”))'。但我正在寻找更短的路。 – Delsa

回答

1

如果你有大量的负载要求的,只是做一个小工具功能:

public class FXMLUtil { 
    // loads an FXML file from a location relative to this class. 
    public static <T> T load(String loc) throws IOException { 
     FXMLLoader loader = new FXMLLoader(); 
     loader.setLocation(FXMLUtil.class.getResource(loc)); 
     return loader.load(); 
    } 
} 

使用它,像这样:

Parent content = FXMLUtil.load("view/secondAttemp‌​t.fxml"); 
+0

感谢您的帮助。 – Delsa

相关问题