У меня есть этот код, но я не знаю, как загрузить изображение stone.png, чтобы я мог его использовать.Доступ к файлу .png в .jar-файле и его использование
package mine.mine.mine;
import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class MainGame {
private static void showGUI()
{ JFrame frame = new JFrame("Mine Mine Mine");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel emptyLabel = new JLabel("");
emptyLabel.setPreferredSize(new Dimension(496, 496));
frame.getContentPane().add(emptyLabel, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
BufferedImage img = null, diamond = null, emerald = null, gold = null, lapis = null, iron = null, redstone = null, coal = null; //Ignore these.
try {
img = ImageIO.read(new File("stone.png")); //Main problem is here. Used debug method on line 27.
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "ERROR: The game has corrupted/missing files. Please redownload the game.", "Mine Mine Mine", JOptionPane.ERROR_MESSAGE);
JOptionPane.showMessageDialog(null, e.getStackTrace());
}
}
public static void main(String args[]){
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
showGUI();
}
});
}
}
Я хочу, чтобы отобразить stone.png на JLabel или JFrame, это мой первый раз пытается это так, пожалуйста, не называйте меня нуб. ;)
Эй, спасибо, чувак, он работал :). Можете ли вы помочь мне отобразить это изображение в JLabel/JFrame? –
[Как использовать ярлыки] (http://docs.oracle.com/javase/tutorial/uiswing/components/label.html) – MadProgrammer