gpt4 book ai didi

java - getImage 方法显示空白

转载 作者:行者123 更新时间:2023-11-29 09:03:58 24 4
gpt4 key购买 nike

我尝试了很多解决方案,但似乎无法找到我的代码的问题。我已经检查了路径名、文件的权限,并为图像尝试了几个不同的文件名。图像未显示。

private Character player;
private Image image, sprite;
private URL base;
private Graphics second;

@Override
public void init() {
setSize(500,500);
setBackground(Color.white);
setFocusable(true);
addKeyListener(this);
Frame frame = (Frame)this.getParent().getParent();
frame.setTitle("Joules");
try {
base = getDocumentBase();
sprite = getImage(base,"kips.PNG");
} catch (Exception e) {
}

// sprite = getImage(base,"kips.PNG");
}

@Override
public void start() {
player = new Character();

Thread thread = new Thread(this);

thread.start();
}

@Override
public void update(Graphics g) {
if (image == null) {
image = createImage(this.getWidth(), this.getHeight());
second = image.getGraphics();
}

second.setColor(getBackground());
second.fillRect(0, 0, getWidth(), getHeight());
second.setColor(getForeground());
paint(second);

g.drawImage(image, 0, 0, this);
}

@Override
public void paint(Graphics g) {
g.drawImage(sprite,player.getCenterX(),player.getCenterY(),this);
}

@Override
public void run() {
while (true) {
repaint();
try {
Thread.sleep(34);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}

请帮忙...

最佳答案

我刚遇到这个问题,发现 getDocumentBase() 正在返回一个巨大的路径,它是当前小程序的基础,而不是项目。

相反,我使用了返回“../projectName/bin/”的 getCodeBase(),因此在代码中导航回您的相对路径中的一个文件夹。


base = getCodeBase();<br/>
sprite = getImage(base,"../kips.PNG");

关于java - getImage 方法显示空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15985246/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com