1
我正在开发便携式桌面应用程序,并且UI使用某些图像。我的应用程序的绝对路径是:C:/ Users/JP/Documents/EOL/Collection/DataCollection/src/application/某些图像未获取相对路径 - JavaFX
我在应用程序文件夹(上面指定)中有我的fxml和主类源文件,应用程序文件夹内的“图像”全部是.jpg文件。当我使用相对路径在我的fxml文件中引用这些文件时,1会被加载,而另外两个不会。
我不知道为什么一个特定的文件加载而其他加载失败。
当我在fxml的所有三个位置引用一个文件时,它工作正常。当我用绝对路径引用所有3个不同的图像时,它工作正常。但我并不了解相对路径问题,只涉及少数几个文件。谁能帮我这个?
我也尝试用“file:”替换'@',但没有帮助。
<ImageView fitHeight="333.0" fitWidth="450.0" opacity="0.27">
<image>
<Image url="@images/ht.jpg" />
</image>
</ImageView>
<ImageView fitHeight="70.0" fitWidth="68.0" layoutX="5.0" layoutY="7.0">
<image>
<Image url="@images/eol.jpg" />
</image>
</ImageView>
<ImageView fitHeight="103.0" fitWidth="162.0" layoutX="78.0" layoutY="-9.0" preserveRatio="true">
<image>
<Image url="@images/eol2.gif" />
</image>
</ImageView>
您是否在使用Scenic Builder 2.0?如果是这样,当你用它打开fxml文件时,你看到三个图像了吗?如果您不这样做,请尝试从Inspector选项卡的属性 - >图像中加载它们,浏览。保存并关闭,然后再次运行应用程序。 – 2014-11-08 17:28:25
是的。我正在使用场景生成器2.0。我看到场景构建器中的所有图像,但是当我从java代码运行它时,我没有看到它们中的一个。也尝试从检查器选项卡加载。没有运气! – 2015-01-27 13:41:55
我真的不知道发生了什么,没有看到你的代码。在运行应用程序时,您可以尝试使用[Scenic View](http://fxexperience.com/scenic-view/),并查看“ImageView”节点下显示的内容。你使用什么容器?也许他们被加载,但在你看到的或在可见场景之外的后面...... – 2015-01-27 13:49:34