Java 等待函数

0 java time function delay wait

我想知道你们是否可以帮助我。我正在尝试使用 Java 的内置图形模块制作一个动画程序......问题是,Java 一次执行所有内容;不同的动画之间没有任何时间。最终产品只是最后一张照片。我需要一个在每张图片之间放置半秒的函数。

任何帮助表示赞赏。

规格:Blue-J,JDK 6。

编辑:顺便说一句,我是一个 Java 新手,这是一个类的东西。任务是制作动画,然后按“c”前进每一帧,但我认为那有点像贫民窟,所以我想要更好的东西。

Kaj*_*Kaj 5

创建一个javax.swing.Timer,每 X 毫秒执行一次,每次触发时绘制一帧。

这是来自 javadoc 的示例:

  int delay = 1000; //milliseconds
  ActionListener taskPerformer = new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
          //...Perform a task...
      }
  };
  new Timer(delay, taskPerformer).start();
Run Code Online (Sandbox Code Playgroud)

修改延迟,例如 20ms。如果您的绘画时间不长,这将使您每秒获得大约 50 帧。