有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JavaFX图像加载错误

我试图在JavaFX中实现一个非常简单的Raspberry Pi接口。我用的是一个。基于fxml的布局和样式我的项目与css。我的问题是,尽管该应用程序在我的主计算机(从eclipse运行)上运行得很好,但它在Raspberry上也不工作,当我尝试在主计算机上运行导出的jar时也不工作

我就是这样把纽扣剥皮的。当然,resources/images文件夹在我的建筑路径中。按钮的颜色与我在css中描述的相同,但图像没有加载

.imageButton1 {
-fx-background-color: blue;
-fx-graphic: url('file:resources/images/temperature.png');}

它给了我以下错误:

WARNING: Error loading image: file:resources/images/temperature.png

我把我的项目上传到dropbox


共 (2) 个答案

  1. # 1 楼答案

    项目的问题在resources文件夹中。找不到位于源文件夹之外的文件

    我就是这样做到的:

    在NetBeans中创建了一个JavaFX项目,并将资源文件夹移动到源文件夹中。这就是源代码包:

    -Source Packages
        +me.noip.blase
        +me.noip.blase.view
        +resources.images
    

    然后将所有引用从file:更改为“/:

    primaryStage.getIcons().add(new Image("/resources/images/icon.png"));
    

    以及css文件:

    .imageButton1 {
            -fx-background-color: blue;
            -fx-graphic: url('/resources/images/temperature.png');
    }
    .imageButton2 {
            -fx-graphic: url('/resources/images/gear.png');
            -fx-background-color: red;
    }
    .imageButton3 {
            -fx-graphic: url('/resources/images/power.png');
            -fx-background-color: black;
    }
    
    .imageButton4 {
            -fx-graphic: url('/resources/images/diagram.png');
            -fx-background-color: green;
    }
    

    现在它在桌面和树莓皮上都能正常工作

  2. # 2 楼答案

    我会接受你的解决方案作为答案,我尝试导入到NetBeans,它成功了,但我无法在Eclipse下复制。与此同时,我在这里发现了另一个问题,并遵循该解决方案,它起了作用(我不知道我以前怎么没有发现,我在谷歌上搜索了一天)

    如果有人搜索这个,我会留下这个

    非常感谢您的时间和帮助:)