gpt4 book ai didi

java - 如何用Swing制作动画?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:59:01 24 4
gpt4 key购买 nike

我在制作 JApplet 时遇到了动画问题。

这是我的代码:

        this.sprite.setBounds(0,0,20,17);
this.sprite.setIcon(this.rangerDown);
for(int i = 0; i< 16;i++)
{
this.sprite.repaint();
this.sprite.setLocation(this.sprite.getX(), this.sprite.getY()+10);
try{
Thread.currentThread().sleep(100);
}catch(InterruptedException e){
}
}

有了这个,就没有动画了:在循环期间什么也没有发生,repaint() 方法似乎只在 Sprite 停止移动时才起作用。

我只想为此使用 Swing,对如何进行有任何想法吗?

感谢阅读。

最佳答案

您应该使用 javax.swing.Timer 来执行动画而不是线程 hibernate 。这是一个很好的链接,可以帮助您继续:http://java.sun.com/docs/books/tutorial/uiswing/misc/timer.html

另外,我强烈推荐购买这本书 Filthy Rich Clients -- 如果您访问该网站,您还可以免费下载所有示例代码。例如,Chapter 12: Animation Fundamentals有一些很棒的示例,例如演示 Timer 用法的 MovingButton。

关于java - 如何用Swing制作动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1682931/

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