我需要 jframe 上的图像图标,但我不想给出路径。我正在使用这个
jLabel1.setIcon(new javax.swing.ImageIcon("C:\\Users\\ABC\\Desktop\\folder name\\1.jpg"));
因为每个系统都有不同的路径,这就是我不能在其他系统(计算机)上编译它的原因。我需要一些方法,以便仅通过文件名设置图像图标。并且图像在src
文件夹中。
我需要 jframe 上的图像图标,但我不想给出路径。我正在使用这个
jLabel1.setIcon(new javax.swing.ImageIcon("C:\\Users\\ABC\\Desktop\\folder name\\1.jpg"));
因为每个系统都有不同的路径,这就是我不能在其他系统(计算机)上编译它的原因。我需要一些方法,以便仅通过文件名设置图像图标。并且图像在src
文件夹中。
Image
作为嵌入式资源阅读。此处显示的新images
文件夹只需要在类路径中可用
public class ImageApp {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Image image = null;
try {
image = ImageIO.read(getClass().getResource("/images/1.png"));
} catch (IOException e) {
e.printStackTrace();
}
JFrame frame = new JFrame("Image App");
frame.add(new JLabel(new ImageIcon(image)));
frame.pack();
frame.setVisible(true);
}
});
}
}
您可以使用相对路径:例如,如果图标在程序工作目录(与程序相同的目录)中,则可以使用“1.jpg”,如果在文件夹中 - “folderName/1.jpg”。