javafx - 从不同的包中定位 fxml 文件
问题描述
在尝试从位于不同包中的控制器打开 fxml 文件时,我遇到了“去皮”类型的困难。包结构如下:
控制器名称 =LocationController
控制器包 =src/com/yas/prayertimeconfig/location/java
FXML 文件名 = AvailableAddresses.fxml
FXML 文件包 =src/com/yas/prayertimeconfig/availableaddresses/java
我用来从 in 打开 fxml 文件的代码LocationController
如下:
@FXML void btnFindAddress_Click(ActionEvent event) throws IOException {
try{
Parent root1 = FXMLLoader.load(getClass().getResource("/src/com/yas/prayertimeconfig/availableaddresses/java/AvailableAddresses.fxml"));
Stage stage = new Stage();
stage.setTitle("Available Addresses");
stage.setScene(new Scene(root1));
stage.show();
} catch (Exception e) {
System.out.println(e);
}
}
我不断得到:
java.lang.NullPointerException: Location is required.
我已经尝试过每一次使用:
getClass().getResource()
和
getClass().getClassLoader().getResource()
没有喜悦。
请帮忙!
解决方案
推荐阅读
- javascript - 是否可以根据路由激活影响 html 标记的 css 类?
- javascript - 有向无环层次图实现
- node.js - 使用 HttpService 导出为 CSV:JSON 中的意外令牌 N
- php - 当我选择值形式 dropdwon 时,php $_Post['name'] 中没有显示?
- java - java中没有任何参数的注释是什么意思?
- python - 如何计算python中数据框列的所有值的滚动平均值
- php - MySQL PHP在具有varchar值的重复键上插入更新
- c# - 如何编写客户端代码以允许记录器注入
- java - 我们可以为其中一个变量添加 @Column 和 @OneToOne 两个注释吗?
- typescript - 打字稿用只读属性初始化对象