gpt4 book ai didi

java - 无法在 Java 上加载图像 (BlueJ)

转载 作者:行者123 更新时间:2023-12-01 13:34:24 24 4
gpt4 key购买 nike

我正在尝试将图像加载到 Java 上,但运行代码时,我的 JFrame 中什么也没有出现。

我这样做的方式是从我的 main 调用我的 Image 函数:

    import java.awt.*;              // Graphics stuff from the AWT library, here: Image
import java.io.File; // File I/O functionality (for loading an image)
import javax.swing.ImageIcon; // All images are used as "icons"



public class GameImage
{
public static Image loadImage(String imagePathName) {

// All images are loades as "icons"
ImageIcon i = null;

// Try to load the image
File f = new File(imagePathName);


if(f.exists()) { // Success. Assign the image to the "icon"
i = new ImageIcon(imagePathName);
}
else { // Oops! Something is wrong.
System.out.println("\nCould not find this image: "+imagePathName+"\nAre file name and/or path to the file correct?");
System.exit(0);
}

// Done. Either return the image or "null"
return i.getImage();

} // End of loadImages method

}

然后在这里调用它:

        GI_Background = GameImage.loadImage("Images//background.jpg");
GI_DuskyDolphin = GameImage.loadImage("Images//DuskyDolphin.jpg");

如果这还不够,我很乐意提供其余的代码:)谢谢

最佳答案

如果图像是应用程序的一部分,不要使用文件,而是使用 java 资源机制。

    URL imageUrl = getClass().getResource("/Images/background.jpg");
return new ImageIcon(imageURL).getImage();

未找到资源 URL 将返回 null。如果应用程序打包在 .jar 中,您可以使用 7zip/WinZip 等打开它,并检查路径。它必须区分大小写,并使用 / (而不是反斜杠)。

关于java - 无法在 Java 上加载图像 (BlueJ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21385429/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com