Java 在没有getImage()的小程序中加载图像?
我通常使用以下方式在小程序中加载图像:Java 在没有getImage()的小程序中加载图像?,java,image,file,applet,load,Java,Image,File,Applet,Load,我通常使用以下方式在小程序中加载图像: this.getImage( getCodeBase(), "myimage.png" ); 或 但是,如果我想从另一个类加载一个图像,该类不是Applet的子类,也没有引用Applet的成员,该怎么办 比如说,我有一个sprite类,我想在它的update方法中加载动画图像: @Override public void update(){ frame++; if ( frame > 3 ) frame = 1;
this.getImage( getCodeBase(), "myimage.png" );
或
但是,如果我想从另一个类加载一个图像,该类不是Applet的子类,也没有引用Applet的成员,该怎么办
比如说,我有一个sprite类,我想在它的update
方法中加载动画图像:
@Override
public void update(){
frame++;
if ( frame > 3 ) frame = 1;
/* the problem */
loadImage( getCodeBase(), "myimage_" + frame + ".png" );
}
当然,我可以将Applet-app
作为参数,但是sprite的update方法在代码的许多不同部分和其他许多类中都会被调用,这将使内容极其复杂,并使生活变得困难
那么,有没有一种方法可以不使用applet的getImage()
方法从applet中的文件加载图像
那么,有没有一种方法可以在不使用小程序的getImage()方法的情况下从小程序中的文件加载图像
从非小程序类定义或应用程序中的文件加载图像时,需要以下语句:
Toolkit toolkit = Toolkit.getDefaultToolkit();
Image image1 = toolkit.getImage("fileName.ext");
问题似乎是“如何形成URL”,而不是“如何避免getImage()”。如今人们似乎忽视了java问题…:(
Image img = ImageIO.read(url);
Toolkit toolkit = Toolkit.getDefaultToolkit();
Image image1 = toolkit.getImage("fileName.ext");