1

我有一个类,它的属性中有一个图像。我做了一个简单的吸气剂来返回这个图像..

public Image getImage() {
    return image;
}

后来我尝试在 drawImage() 中使用这个 getter,但没有得到图像。

g.drawImage(c.getImage(), c.getXcord(), c.getYcord(), null, this);

正如你所看到的,我有这个类的其他吸气剂(getXcord、getYcord)工作正常,但我似乎无法获得图像。

这里是 WoodlandCreatures 类

public class WoodlandCreatures extends Animals {
public String favPlant;

public WoodlandCreatures(String fPlant, String animal, Image im, int x, int y) {
    this.favPlant = fPlant;
    this.animalType = animal;
    this.image = im;
    this.xCord = x;
    this.yCord = y;
}
/*
public Image getImage() {
    return image;
}
      */

这个类扩展了动物

public abstract class Animals {
public String animalType;
public Image image; 
public int xCord;
public int yCord;


public Image getImage() {
    return image;
}
public int getXcord() {
    return xCord;
}
public int getYcord() {
    return yCord;
}

这就是我创建我正在使用的图像的方式。

Image squir2;
BufferedImage squir1 = createImage("images/Squirrel/Squirrel1.png");

squir2 = (squir1.getScaledInstance(100, 100, Image.SCALE_SMOOTH));

这是 createImage 函数...

private BufferedImage createImage(String x){
    BufferedImage bufferedImage;
    try {

        bufferedImage = ImageIO.read(new File(x));


        return bufferedImage;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

希望其中一些代码可以清除一些东西。

4

0 回答 0