我是Java的新手(仍在学习)所有其他作品都进展顺利但只有这个动画让我头疼,咖啡甚至不会帮助=(! 我应该制作一个Javaman动画(10个gif图片命名为T1,T2,... T10)我应该使用Thread,MediaTracker-class和addImage-method。然后我应该使用sleep-method指定动画的速度(如果这是正确的话,我使用了join-method)。
(我的JAVA代码就像这样)
import java.applet.Applet;
import java.awt.*;
public class Animaatio extends Applet implements Runnable {
Image[] images = null;
MediaTracker tracker = null;
int current = 0;
Thread animThread;
@Override
public void init() {
// Creating a new media tracker, to track loading images
tracker = new MediaTracker(this);
// Creating an array of ten images
images = new Image[10];
// Downloading the images
for (int i = 0; i < 10; i++) {
// Loading the images
images[i] = getImage(getCodeBase(), (i + 1) + "T.gif");
tracker.addImage(images[i], 0);
}
try {
tracker.waitForAll();
} catch (InterruptedException e) {
}
}
@Override
public void start() {
if (animThread == null) {
animThread = new Thread(this);
animThread.start();
}
try {
animThread.join();
} catch (InterruptedException e) {
}
}
@Override
public void paint(Graphics g) {
g.drawImage(images[current++], 0, 0, this);
}
@Override
public void run() {
while (true) {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
}
}
}
}
问题是我没有看到任何动画只是一个空的applet查看器,它只是一直运行。如果图像存储在错误的位置可能会导致问题?如果有人可以帮助我,我会非常感谢我的骑士=)。