编程语言
首页 > 编程语言> > JavaFX映像未在阶段显示

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