java frame update_java – 更新JFrame

我有一个JFrame,我想模拟倒计时(如火箭发射).所以我通过隐藏各种控件(setVisible(false))并显示带有文本的JLabel来设置框架(这是应该倒计时的文本:3,2,1,Go).

JLabel上的文字从“3”开始.我的目的是简单地执行程序等待1秒,然后将文本更改为“2”,再等一秒,更改为“1”等.最后,我隐藏了JLabel并重新显示了所有控件,一切都正常进行.

我在做什么不起作用.它似乎等待了正确的时间,当它完成时,我的JFrame看起来很棒并按预期工作.但在倒计时方法的4秒钟内,我看到的只是一个白色的JFrame.不是我想要的3,2,1.

这是我的代码.谁能看到我做错了什么?谢谢!

public void countdown() {

long t0, t1;

myTest.hideTestButtons(true);

myTest.repaint();

t0 = System.currentTimeMillis();

do {

t1 = System.currentTimeMillis();

} while ( (t1 - t0) < 1000);

myTest.TwoSeconds();

myTest.repaint();

t0 = System.currentTimeMillis();

do {

t1 = System.currentTimeMillis();

} while ( (t1 - t0) < 1000);

myTest.OneSecond();

myTest.repaint();

t0 = System.currentTimeMillis();

do {

t1 = System.currentTimeMillis();

} while ( (t1 - t0) < 1000);

myTest.Go();

myTest.repaint();

t0 = System.currentTimeMillis();

do {

t1 = System.currentTimeMillis();

} while ( (t1 - t0) < 1000);

myTest.hideTestButtons(false);

myTest.repaint();

}

public void TwoSeconds() {

lblCountdown.setText("2");

}

public void OneSecond() {

lblCountdown.setText("1");

}

public void Go() {

lblCountdown.setText("Go!");

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值