Java用线程循环换获取当前时间问题!
发布网友
发布时间:2022-05-29 07:41
我来回答
共3个回答
热心网友
时间:2023-10-11 10:46
import java.awt.Toolkit;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Time extends JFrame implements Runnable {
int width = Toolkit.getDefaultToolkit().getScreenSize().width;
int height = Toolkit.getDefaultToolkit().getScreenSize().height;
JLabel jl1 = new JLabel();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒");
public Time() {
jl1 = new JLabel(sdf.format(new Date()));
jl1.setBounds(200, 100, 100, 50);
this.add(jl1);
this.setTitle("时间线程");
this.setLocation((width - 500) / 2, (height - 500) / 2);
this.setSize(500, 500);
this.setVisible(true);
}
public static void main(String[] args) {
Time t = new Time();
new Thread(t).start();
}
@Override
public void run() {
while (true) {
try {
Thread.sleep(1000);
jl1.setText(sdf.format(new Date()));
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
这样比较简洁吧。
热心网友
时间:2023-10-11 10:46
不应该把run方法写在main()函数里(当然你要非写在里面也有方法),在main外面重写run方法。然后在main方法里定义个thread 对象add 这个runnable引用,然后调用thread的start方法。就行了
热心网友
时间:2023-10-11 10:47
报什么错啊,贴出来啊!追问没报错就是时间不循环~我设置1秒一刷新他不刷新
追答应该是页面得刷新