0

所以我用Java做了一个非常大的游戏,我打算把它放在我的网站上,所以我把它弄乱了,把它变成了一个小程序。它启动并运行得很好,唯一的问题是它不会加载任何图片。这是我目前的做法:(请记住,这是一个 JPanel 扩展类,我在我的小程序类中创建了一个对象并添加到小程序中)

在 Screen(JPanel) 类中:

    for (int i = 0; i < tileset_ground.length; i++) {
        tileset_ground[i] = frame.loadImage("res/tileset_ground.png");
        tileset_ground[i] = createImage(new FilteredImageSource(tileset_ground[i].getSource(), new CropImageFilter(0, 26 * i, 26, 26)));
    }

在框架(小程序)类中:

public Image loadImage(String url){
    return getImage(getCodeBase(), url);
}
4

1 回答 1

0

我发现当我尝试从 jar 文件或使用小程序加载图像时,我需要更多信息,而不仅仅是 /folder/file.name。我现在通常使用这种方法:

这是用于设置标签或其他东西的图​​标。

jLabel.setIcon(ImageIcon(getClass().getResource("/Folder/File.name")));

如果我想返回图像,我会使用这个:

Image image = ImageIcon(getClass().getResource("/Folder/File.name")).getImage();

有更好的方法可以做到这一点,但我发现这很容易而且足够好。

于 2012-12-09T23:22:47.157 回答