Java 加载图像
这是我用来加载名为“boat.png”的图像的代码 这两行会产生错误Java 加载图像,java,swing,graphics,overriding,Java,Swing,Graphics,Overriding,这是我用来加载名为“boat.png”的图像的代码 这两行会产生错误 BufferedImage img = null; img = ImageIO.read(new File("boat.png")); 虽然我已经包括在内了 import java.io.*; import java.awt.*; 请帮我找到错误 我认为问题在于buffereImage在java.awt.image包中,而不仅仅是java.awt,因此您需要: import java.awt.image.*; 或 一些I
BufferedImage img = null;
img = ImageIO.read(new File("boat.png"));
虽然我已经包括在内了
import java.io.*;
import java.awt.*;
请帮我找到错误 我认为问题在于
buffereImage
在java.awt.image
包中,而不仅仅是java.awt
,因此您需要:
import java.awt.image.*;
或
一些IDE将通过建议导入哪个包来帮助您修复此错误—Eclipse当然会这样做
编辑:您还需要导入
javax.imageio.*
或javax.imageio.imageio
-但您肯定也需要一个早期的导入…我相信问题在于BufferedImage
在java.awt.image
包中,而不仅仅是java.awt
,因此您需要:
import java.awt.image.*;
import java.awt.image.BufferedImage
或
一些IDE将通过建议导入哪个包来帮助您修复此错误—Eclipse当然会这样做
编辑:您还需要导入javax.imageio.*
或javax.imageio.imageio
-但您肯定也需要一个早期导入
import java.awt.image.BufferedImage
应包括此导入声明
应包括此导入语句。ImageIO类在包中 尝试导入该包:
import javax.imageio.ImageIO;
ImageIO类在包中 尝试导入该包:
import javax.imageio.ImageIO;
你需要告诉我们错误。请阅读错误信息(找不到符号:BuffereImage&ImageIO)您不应该覆盖
paint
,使用JPanel
和覆盖paintComponent
,并且不要忘记通过调用paintComponent
超级实现作为覆盖中的第一个调用来遵守绘制链method@DavidKroukamp很好的发现,但另一个注意img=ImageIO.read(新文件(“boat.png”)代码>切勿尝试在任何绘制(图形)
或绘制组件(图形)
方法中加载资源或执行任何可能长时间运行的操作!相反,它应该声明为类的一个属性,该属性可以在paint方法中访问,并在构造过程中的某个时间加载。话虽如此,我通常会在相关对象的构造函数中指定一个图像
,让用户担心源代码。他们可以从文件
/URL
中获取它,也可以在运行时绘制它,我不在乎这些你需要告诉我们错误。请阅读错误信息(找不到符号:BuffereImage&ImageIO)您不应该覆盖paint
,使用JPanel
和覆盖paintComponent
,并且不要忘记通过调用paintComponent
超级实现作为覆盖中的第一个调用来遵守绘制链method@DavidKroukamp很好的发现,但另一个注意img=ImageIO.read(新文件(“boat.png”)代码>切勿尝试在任何绘制(图形)
或绘制组件(图形)
方法中加载资源或执行任何可能长时间运行的操作!相反,它应该声明为类的一个属性,该属性可以在paint方法中访问,并在构造过程中的某个时间加载。话虽如此,我通常会在相关对象的构造函数中指定一个图像
,让用户担心源代码。他们可以从文件
/URL
中获取它,也可以在运行时绘制它,我不在乎这些@鼓舞人心的编程:更多的错误,你仍然认为没有提供细节?这至少可以修复BufferedImage
未知的问题…@InspiringProgramming:还有更多的错误,你还不知道这些错误的细节吗?这至少可以修复buffereImage
未知的问题。。。