我在AWT中制作2D游戏,我将所有文件都放在一个包中。现在我将文件分成一些包。图像,我用它调用:
ImageIcon ii=new ImageIcon(this.getClass().getResource(image));
img=ii.getImage();
现在我打电话给:
ImageIcon ii=new ImageIcon("cz/ryska/awtgame/images/"+image);
img=ii.getImage();
此代码在类中位于包 cz.ryska.awtgame.basic
但是当我开始游戏时,显示游戏场景但不显示图像。场景为空。但是不会诱发任何 Java 错误。可能找到图像,但未显示。问题是什么?
..在我改变包装结构之前,绘画是功能性的。
您所做的不仅仅是更改包结构。变化是第一个是按URL
加载图像,而第二个是从File
加载图像(其中String
表示路径)。URL
可以与嵌入的资源一起使用,而File
则不能。
有关详细信息,请参阅 embedded-resource
上的信息页面。