2010-04-26 70 views
1

我嘗試將圖像添加到JPanel。如果我指定圖像的全名(包括所有文件夾的名稱),它將起作用。但是我希望我的軟件獨立於機器(另一臺機器與我的機器沒有相同的文件夾結構)。所以,我把我的圖像放在源代碼的相同位置,並在我的代碼中使用圖像的名稱(沒有文件夾的名稱)。這是行不通的。我把我的圖像放到我的可執行文件所在的文件夾中。它不再工作。那麼,爲什麼它不起作用,我該怎麼辦?如果我不使用圖像的全名,爲什麼我看不到圖像?

回答

3

相對文件名是相對於應用程序的當前目錄(如由System propertyuser.dir定義的)解析的,不一定是它的源/ jar位置。

如果要加載與應用程序一起交付的圖像(或其他資源),則最好將它們放入應用程序的.jar文件中,並使用ClassLoader加載它們。 getResource()和/或getResourceAsStream()

相關問題