我需要使用 SceneBuilder 创建一个 GUI。我在界面中添加了一个 ImageView 并正确设置了图像的路径。图像显示在 SceneBuilder 中,但是当我运行我的应用程序时,图像不存在。
我将图像放入“img/placeholder.png”中,然后直接放入我的根目录中。不管我把它放在哪里,它都不起作用。
我的 gui.fxml 文件的路径:
/src/gui/gui.fxml
我的图像文件的路径:
/placeholder.png
有人可以帮我吗?
有一个更简单的解决方案可以解决您的问题,无需添加或删除任何代码。
在场景生成器中创建 ImageView 控件并从计算机中选择图像后,选择省略号按钮旁边的“齿轮”图标,然后选择“切换到绝对路径”。
当您运行代码时,图像将自动出现。
某些特定上下文中的另一种解决方案(maven 相关) 给定
/src/main/resources/foo/gui.fxml
和 /src/main/resources/foo/img/foo.png
,如果您在 SceneBuilder 中创建图像视图并将图像设置为 foo.png,则 url 将显示为 @img/foo.png
。不幸的是,该图像没有显示在应用程序中。如果将图像 url 更改为 @/foo/img/foo.png
,则图像将不再在 SceneBuilder 中显示,但会在应用程序中显示。
SceneBuilder 8.2.0、JDK 1.8、IntellJ IDEA 2016.1
图片URL中应该有@如下。将图像文件放在项目文件夹内的同一包或不同包中。
<Image url="@../image/profile_pic.png" />
尝试刷新 Eclipse 的系统资源管理器。我就是这样解决的。
来自内容根的路径 src/main/resources/assets/POMME.png =
<Image url="@../../../assets/POMME.png" />
我修复了将图像放在 SRC 文件夹中的问题,当我尝试从另一个文件夹加载时没有任何反应。
这是因为你的程序中没有添加jfoenix jar。 将 jfoenix jar 添加到您的项目中 [xdezo.com][1]