2013-12-07 70 views
0

在我的比賽,我有以下代碼:圖片進入罐

public Main() { 
       p = new Potato(); 
       addKeyListener(new AL()); 
       setFocusable(true); 
       ImageIcon i = new ImageIcon("C:/test.png"); 
       img = i.getImage(); 
       time = new Timer(5, this); 
       time.start(); 
       en = new Enemy(700, 200, "C:/enemy.png"); 
       en2 = new Enemy(700, 200, "C:/enemy.png"); 
     } 

不過,我想提出test.png包內,但是當我做它創建一個與我的錯誤片。我想把圖片放在jar文件裏面的文件夾裏,但是我會在那裏放置什麼?我主要問我如何在jar中製作ImageIcons參考文件。

回答

0

ImageIcon(String)期望一個文件參考。當你將資源嵌入到應用程序上下文中(並且它們是Jar)時,他們不能再訪問喜歡的文件,而需要使用類似getClass().getResource(...)

例如,假設圖像處於相同封裝類,您可以使用...

ImageIcon i = new ImageIcon(getClass().getResource("test.png")); 

,或者圖像是在另一個包,您可能需要使用

ImageIcon i = new ImageIcon(getClass().getResource("/path/to /resource/test.png"));