如何在java图形化界面动态显示当前时间

如何在java图形化界面动态显示当前时间,第1张

利用死循环和线程,让线程在循环中每sleep1秒,重新获取下系统时间不就是动态显示时间了吗

while(true){

Date date=new Date(System.currentTimeMillis())

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

System.out.println(date)

//每一秒刷新下时间

try {

Thread.sleep(1000)//sleep是以ms为单位

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

你可以试下代码,看看是不是你要的效果

1楼,觉得你理解错误了,他是想把系统时间放在图片上,而不是时间和图片分开放置。

学习下。

等待答案中。。。。

我也只能把它分开放置:

public class Show extends JFrame implements Runnable {

JLabel jl

JLabel j2

public Show() {

super("时间显示")

jl = new JLabel()

j2 = new JLabel()

setLayout(new BorderLayout())// 设置布局管理器

double lx = Toolkit.getDefaultToolkit().getScreenSize().getWidth()

double ly = Toolkit.getDefaultToolkit().getScreenSize().getHeight()

setLocation((int) lx / 2 - 150, (int) ly / 2 - 150)

j2.setIcon(new ImageIcon(Toolkit.getDefaultToolkit().getImage(

"C:\\1.jpg")))

add(j2, "Center")

add(jl, "North")

setSize(400, 400)

setVisible(true)

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)// 关闭按钮退出程序

}

public void run() {

while (true) {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")

jl.setText(sdf.format(new Date()))

try {

Thread.sleep(1000)

} catch (Exception e) {

jl.setText("出错错误,请重启程序")

}

}

}

public static void main(String arg[]) {

Show t = new Show()

Thread thread1 = new Thread(t)

thread1.start()

}

}

惭愧。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11790312.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存