如何在JavaSwing中显示变化的文本(即,显示时间和变化的秒数)
我正在寻找一种在JFrame上以JLabel显示当前日期和时间的方法,但要自动更新。一旦它被绘制到窗格中,我就不必担心手动更新它,因为它会每2秒刷新一次 有没有合适的方法?不要每2秒手动更改JLabel的文本值。使用以确保在EDT上更新Swing组件如何在JavaSwing中显示变化的文本(即,显示时间和变化的秒数),java,swing,date,time,jlabel,Java,Swing,Date,Time,Jlabel,我正在寻找一种在JFrame上以JLabel显示当前日期和时间的方法,但要自动更新。一旦它被绘制到窗格中,我就不必担心手动更新它,因为它会每2秒刷新一次 有没有合适的方法?不要每2秒手动更改JLabel的文本值。使用以确保在EDT上更新Swing组件 Timer t = new javax.swing.Timer(2000, new ActionListener(){ @Override public void actionPerformed(ActionEvent e){
Timer t = new javax.swing.Timer(2000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
yourLabel.setText(...);
}
});
t.start();
用秋千。正如所解释的,它是工作所必需的工具
使用它们的唯一替代方法是在
TimerTask
中嵌入SwingUtilities.invokeLater()
或SwingUtilities.invokeAndWait()
,感谢您提供了到教程的链接以及一些计时器示例