gpt4 book ai didi

java - 在Java中导入图像

转载 作者:行者123 更新时间:2023-12-01 13:11:37 25 4
gpt4 key购买 nike

我正在制作一个简单的乒乓球游戏,想要在我的 Racket 上放置纹理,但我不知道如何将图像导入到我的游戏中。我尝试这样做 here在第三个示例中,但它不起作用:

Image myImage = getImage(getCodeBase(), "texture.png");
g.drawImage(myImage, 0, 0 , 10, 120, this);

g 无法解析

这是一些代码:

public void run(){
Image myImage = getImage(getCodeBase(), "texture.png");
g.drawImage(myImage, 0, 0 , 10, 120, this);
GOval ball = makeBall();
add(ball);
GRect paddleLeft = makePaddle();
GRect paddleRight = makePaddle();
add(paddleLeft);
add(paddleRight);
bounce(ball, paddleLeft, paddleRight);

}

public static GRect makePaddle(){
GRect result = new GRect(0,0,WIDTH,HEIGHT);
result.setFilled(true);
result.setColor(Color.BLACK);
return result;
}

texture.png 用于桨

编辑:

我加载了纹理,但我无法让它随着桨移动,我不知道为什么WIDTH 是桨的宽度, getWidth() - 窗口。我想我用来移动桨的代码应该适用于纹理,但事实并非如此

使用 image.sendToFront() 玩家的 Racket 纹理可以工作,但 AI 不行

if(mouseY<getHeight()-HEIGHT){                                // Player
paddleLeft.setLocation(WIDTH,mouseY);
image.setLocation(WIDTH,mouseY);
image.sendToFront();
}
else{
paddleLeft.setLocation(WIDTH,getHeight()-HEIGHT);
image.setLocation(WIDTH,getHeight()-HEIGHT);
image.sendToFront();

}
if(ball.getY()<getHeight()-paddleRight.getHeight()){ // AI
paddleRight.setLocation(getWidth()-2*WIDTH,ball.getY());
image2.setLocation(getWidth()-2*WIDTH,ball.getY());
image2.sendToFront();
}
else
paddleRight.setLocation(getWidth()-2*WIDTH,getHeight()-paddleRight.getHeight());
image2.setLocation(getWidth()-2*WIDTH,getHeight()-paddleRight.getHeight());
image2.sendToFront();

最佳答案

您似乎正在使用 http://cs.stanford.edu/people/eroberts/jtf/ 中的库(基于 GRect 类等)。

看来你应该能够使用GImage以及。所以代码大致如下:

Image myImage = getImage(getCodeBase(), "texture.png");
//g.drawImage(myImage, 0, 0 , 10, 120, this);
GImage image = new GImage(myImage);
add(image);

关于java - 在Java中导入图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22815692/

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