-1

您好,我正在尝试制作 Java 游戏并尝试上传图片以测试我的大小调整,但是我根本无法加载图片。

ImageIcon img1 = new ImageIcon(this.getClass().getResource("/Pic.png"));
Image im1 = img1.getImage();

public void paint(Graphics g)
{
    Graphics2D g2d = (Graphics2D) g; 
    g2d.drawImage(im1, 0, 0, null);
}

我在我的类所在的包中有我的 png 文件,但是在尝试使用 getResource() 的行上出现空指针异常。提前感谢任何帮助。

4

1 回答 1

1
ImageIcon img1 = new ImageIcon(this.getClass().getResource("/Pic.png"));

我猜你的文件路径中不需要“/”。

此外,自定义绘画是通过覆盖paintComponent() 方法而不是paint() 方法来完成的。

编辑:

我应该为paintComponent方法做什么

只需将方法从paint() 重命名为paintComponent()。此外,您应该始终调用 super.paintComponent(g) 作为第一条语句。

但是,实际上没有理由进行任何自定义绘制,因为您可以使用带有图标的 JLabel 来显示图像。

于 2013-09-21T00:23:55.463 回答