JavaFX映像未在阶段显示
作者:互联网
我已经尝试了好几次,并且做了很多尝试,但是我无法按照自己的意愿在舞台上展示自己的图像.我认为这可能与java查找资源的路径有关,但是我不确定,因为我只是开始使用可视库(在这种情况下为JavaFX).这是我的目录结构:
MyProject
|_assets
| |_img
| |_myImage.jpg
|
|_some
|_other
|_folders
|
|_src
|_ve
|_org
|_project
|_MyProject.java
|_StratPage.fxml
|_StartPageController.java
我需要获取myImage.jpg进行渲染,并且尝试了以下操作:
1)纯fxml方法:
06001
2)同时使用fxml和java.用fx:id =“ logo”声明ImageView元素,然后像这样从StartPageController.java注入图像:
public class StartPageController implements Initializable {
@FXML
private ImageView logo;
@Override
public void initialize(URL url, ResourceBundle rb) {
this.logo = new ImageView("file:../../../../assets/img/myImage.jpg");
}
}
两种方式都不会产生任何异常,我只是不显示图像.我不知道该怎么做.我将衷心感谢您的帮助.
更新:
第一
我尝试放弃具有建议的目录结构,并将图像文件放置在StartPageController.java的同一文件夹中.通过做
logo = new ImageView(new Image(getClass().getResourceAsStream("myImage.jpg")))
我没有任何异常,但是图像没有渲染,这表明我不是在寻找资源,而是在渲染图像.可能是缺少任何图书馆吗?我在使用Netbeans 8.0的Windows 8环境中.再次感谢您的回答.
第二
我只是在Netbeans的项目属性中停用了打包和分发应用程序.现在,图像可以正确渲染,但是我认为问题没有解决,因为当我需要分发软件时,它会再次出现.请,仍然需要帮助!
标签:image,javafx-8,fxml,javafx-2,java 来源: https://codeday.me/bug/20191029/1960000.html