加载图片

时间:2013-01-13 17:05:05

标签: java swing graphics override

这是我用来加载名为“boat.png”的图像的代码

@Override
public void paint(Graphics g) {
    BufferedImage img = null;
    try {
       img = ImageIO.read(new File("boat.png"));
       } catch (IOException e) {
           System.out.println("Can't load the image");
    }
}

这两行产生错误

BufferedImage img = null;
img = ImageIO.read(new File("boat.png"));

虽然我已经包括

import java.io.*;
import java.awt.*;

请帮我找错!

3 个答案:

答案 0 :(得分:3)

我认为问题在于BufferedImage包含在java.awt.image包中,而不仅仅是java.awt,因此您需要:

import java.awt.image.*;

import java.awt.image.BufferedImage;

某些IDE会通过建议导入哪个软件包来帮助您解决此错误 - Eclipse肯定会这样做。

编辑:您需要导入javax.imageio.*javax.imageio.ImageIO - 但您肯定还需要其中一个早期的导入......

答案 1 :(得分:3)

ImageIO类位于javax.imageio包中。

尝试导入该包:

import javax.imageio.ImageIO;

答案 2 :(得分:1)

  import java.awt.image.BufferedImage 

应包含此导入声明。