2013-03-11 56 views
0

的JavaFX应用程序集的ico应用程序图标我怎么可以设置在javafx2

当我创建Java项目中,添加jfxrt.jar

它是正确的

new Image(getClass().getResourceAsStream("../images/customLogo.png")) 

但在JavaFX项目

这是错的。

我怎样才能获得相对路径为此在JavaFX项目。

回答

0

我认为你应该看看Image API和这个另外link在哪里如何把图标回答。

如果你产生一个罐子,你可以使用

new Image("/path/to/image") 

的图片路径以“/”,将罐子内的绝对路径。我强烈建议使用Image API来检查所有选项,并且记录在案。

希望它可以帮助

+0

API不表明如何相对路径来访问图像文件上级或他们的兄弟姐妹目录只能访问子目录和绝对路径的访问。 – Orefa 2013-03-11 08:46:56

+0

我认为它的确如此。实际上这个片段是从API中提取出来的:“”“用指定的参数构造一个新的图像,没有方案的URL与类路径相关,URL方案根据URL.openStream()”“” 。因此,您正在寻找的路径与您的类路径相关,以及您执行应用程序的位置。 http://goo.gl/FiEll – 2013-03-11 11:43:09

0

那么,什么是例外?你在哪里创建项目(哪个IDE)。作为一般规则,在进行查找时不要使用..-路径,尽管它们可能在文件系统上工作,例如,打破jar文件IIRC。

+0

的NetBeans 7.3,如果改变PIC图像子目录的图像和新的图像(的getClass()。的getResourceAsStream( “图像/ customLogo.png”))是正确 – Orefa 2013-03-11 08:36:09

+1

右IIRC的NetBeans总是创建的JAR您应用程序并运行它 - 这就是为什么它不起作用,因为当你在路径中使用“..”时! – tomsontom 2013-03-11 08:53:28