java - 如何在java中创建一个1秒的计时器?
问题描述
我需要使图像在屏幕上反弹。我试图通过将图像向上移动 5 个单位,然后休息一秒,然后再向上移动 5 个单位等来做到这一点。我试图向上移动 5 次,然后向下移动 5 次,休息一秒每个班次之间。我需要帮助将计时器设置为一秒钟,这样它就像每个班次之间的休息时间一样。我需要编写 time() 方法。
public void moveIt(KeyEvent evt) throws InterruptedException {
switch (evt.getKeyCode()) {
case KeyEvent.VK_DOWN:
myY += 0;
break;
case KeyEvent.VK_UP:
for (int i = 1; i <= 10; i++) {
if (i <= 5) {
bounceUp();
} else {
bounceDown();
}
time();
}
break;
case KeyEvent.VK_LEFT:
myX -= 5;
break;
case KeyEvent.VK_RIGHT:
myX += 5;
break;
}
repaint();
}
Timer timer = new Timer();
public void bounceUp() throws InterruptedException {
myY -= 10;
}
public void bounceDown() throws InterruptedException {
myY += 10;
}
public void time() {
}
解决方案
欢迎来到 SO!尝试使用 Timer 中的时间表,如下所示:
Timer timer = new Timer();
timer.schedule(new YourClass(), 0, 1000);
此外,这是同一问题的一个很好的答案: https ://stackoverflow.com/a/12908477/10713658
推荐阅读
- c# - epplus Excel 持续时间公式在 C# 中不起作用
- mysql - laravel Eloquent/QueryBuilder - 为什么变量 $prod 的值变成“?” 在 Sql 查询中?
- java - 如何在rest API中将结构降低到我想要的形式,这样我就可以节省很多服务器请求
- angular - geojson 无法填充我们的区域地图
- java - Java List.contains(ArrayList
字段值等于 x) - android - 我想将 sqlite 数据库中的数据检索到另一个活动的 textview 中,我的数据库代码如下所示
- python - 使用 Python 访问 Microsoft Sharepoint 文件和数据
- sql-server - 通过链接服务器查询时如何执行无错误事务?
- php - wordpress - 未定义 jQuery - wp/admin
- java - 我遇到了一个关于提取国家代码的场景