大家可以告诉我为什么我的背景没有画出来吗

    background = new ImageIcon("C:\\Users\\Aiden Strydom\\Desktop\\Java Game\\Images\\background.jpg").getImage();
}

@Override
public synchronized void DrawScreen(Graphics2D g)
{
    int Width = screen.getWidth();
    int Height = screen.getHeight();

    ImageLocation.x %= Width;  //Make image wrap around
    ImageLocation.y %= Height;

    if(ImageLocation.x < 0)
        ImageLocation.x += Width;
    if(ImageLocation.y < 0)
        ImageLocation.y += Height;

    int x = ImageLocation.x;
    int y = ImageLocation.y;

    g.drawImage(background, x, y, null);
    g.drawImage(background, x - Width, y, null);
    g.drawImage(background, x, y - Height, null);
    g.drawImage(background, x - Width, y - Height, null);
}


我只看到默认的灰色屏幕,调试器确实点击了g.drawImage方法!

更新:实际上,代码没有任何问题-有些背景图片是如何从文件夹中删除的-当我创建新的背景图片时它就可以了。

最佳答案

覆盖要自定义绘制的组件的paintComponent方法。在其Graphics对象上绘制。

08-07 00:53