Java每0.5秒在动画中 move jlabel

标签 java animation jlabel wait move

我想要每 0.5 秒设置一次位置的简单动画,但它不会只在循环结束时设置位置的动画。

int x=1;
int y=1;

while(x<100){

jLabel1.setLocation(x, y);

x=x+10;
y=y+10;
try{Thread.sleep(500);}catch(InterruptedException e){}

}

我已经尝试使用 thread.sleep() 绘制动画并且它起作用了,动画正确但不幸的是这对我来说不是选项,因为我需要在框架周围 move jlabel,里面有人物图片。 有人可以帮我解决这个问题吗。

我试过这两个相同的结果

jLabel1.setBounds(x, y, jLabel1.WIDTH,jLabel1.HEIGHT);  //not working 
jLabel1.move(x,y);  //not working 

最佳答案

而不是使用 Java Timer试试 Swing Timer更适合Swing应用。

请看How to Use Swing Timers

查找示例代码 How to fix animation lags in Java?

关于Java每0.5秒在动画中 move jlabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23961442/

相关文章:

java - 如何将值存储在 JLabel 中,而不在每次激活 JButton 时重置它?

java - 在 Java 8 中重置时间戳

java - 使用同步获取意外值

android - 使用 libgdx 创建交互式动画

java - 在 Java Swing 中启用 Transfersupport 的 stringFlavor

java - 是否可以调整 Jlabel 的大小?

Activity.showDialog(int,Bundle)上的java.lang.NoSuchMethodError?

java - 如何在java中以通用方式重命名文件?

css - 不旋转整圈CSS动画

file - FBX - 在 FBX 文件中,我应该使用哪些数据来构建模型的骨架并为其设置动画?