当前位置: 首页 > 面试题库 >

如何用Swing制作动画?

花稳
2023-03-14
问题内容

我在制作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()方法似乎只在精灵停止移动后才起作用。

我只想将Swing用于此目的,关于如何进行的任何想法?

谢谢阅读。


问题答案:

您应该使用a
javax.swing.Timer执行动画,而不要使用“线程睡眠”。这是一个很好的链接,可以助您一臂之力:http
:
//java.sun.com/docs/books/tutorial/uiswing/misc/timer.html


另外,我强烈建议您购买《肮脏的富客户》这本书-
如果您访问网站,还可以免费下载所有示例代码。例如,第12章:动画基础知识中有一些很好的例子,例如演示计时器用法的MovingButton。



 类似资料:
  • 问题内容: 我目前正在替换匿名的ActionListeners 带有代表动作的类文件: 但是,我的GUI可以执行很多操作(例如CreatePersonAction,RenamePersonAction,DeletePersonAction,SwapPeopleAction等)。 是否有一种很好的方法可以将这些类组织成某种连贯的结构? 问题答案: 您可以将操作保存在单独的程序包中以隔离它们。有时,将

  • 问题内容: 我创建了一个使用JFrame的GUI。我应该怎样做模态? 问题答案: 如果要使窗口成为模态,最好的选择是使用而不是。查看有关Java 6中的引入的详细信息,以获取更多信息。还有一个教程。 下面是一些示例代码,用于将显示在其中是模态的到。除了构造函数外,它遵循与打开a相同的模式。 编辑:更新了Modality API链接并添加了教程链接(向@spork点头表示凹凸)。

  • 如何在侧滑块中制作一些不同类型的动画。有图书馆吗?如果有图书馆,请提供我。

  • 本文向大家介绍使用Swing绘制动态时钟,包括了使用Swing绘制动态时钟的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了利用Swing绘制一个动态时钟的具体代码,供大家参考,具体内容如下 效果 代码在下面,可跳过解析。 前言 编程实现一个时钟 利用Swing绘制一个时钟,只能是静态的。利用Calendar类获取当前的时分秒,然后根据数学公式绘制相应的时钟就可以了。 如果静态的时钟已

  • https://www.chunten.com/angpu/lottiefiles.html 这种动画是怎么制作出来的? 这种我之前一般是用adobe flash制作,后来用adobe animate制作,但我想弄成lottie动画: 像 把这个放到html里就可以看到动画了,但是flash和animate都不能实现,难道需要用adobe AE来制作吗??有没有具体的制作?可以直接生成这种动画js

  • 我需要用三个值的动画制作一个svg饼图,在代码中找不到我的错误。当我移除setTimeout(function(){circle.setAttribute(“Stroke-Dasharray”,p+“100”);},10);在JavaScript中,饼图看起来不错,但没有动画。当我添加这段代码时,它是动画的,但不是加载所有的值,而是逆时针加载,而不是顺时针加载。我不知道任何javascript,但