求用java语言设计一个动态时钟,每秒刷新一次 20

 我来答
百度网友179b4a683c
2011-12-07 · 超过39用户采纳过TA的回答
知道小有建树答主
回答量:141
采纳率:0%
帮助的人:122万
展开全部
package com.kaylves;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JFrame;
import javax.swing.JLabel;

public class Clock {
public static void main(String[] args) throws InterruptedException {
JFrame f = new JFrame();
Timer timer = new Timer();
Thread th=new Thread(timer);
th.start();
JLabel time = new JLabel();
f.add(time);
f.setVisible(true);
f.pack();
while(true){
time.setText(timer.getCurrentTime());
}
}
}

class Timer implements Runnable {
private String currentTime;

public String getCurrentTime() {
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
currentTime = sdf.format(d);
return currentTime;
}

public void run() {
try {
Thread.sleep(1000);
getCurrentTime();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
完成给分
婉顺又谦卑的小宠物Q
2011-12-07
知道答主
回答量:17
采纳率:0%
帮助的人:8.2万
展开全部
import java.awt.*;
import java.awt.event.*;
import java.util.*;//这两个包你没有导入 至少在你贴进来的代码中没有导入
import java.text.SimpleDateFormat;

public class test extends Frame implements Runnable
{
private Label Labelshow=new Label();
private Panel pan1=new Panel();

public test()
{
super("time");
setup();
setResizable(false); //设置此图形界面是不可以改变大小的
setBounds(400, 200, 200, 400);
add(pan1);//修改1 你没有添加Panel界面会什么都不显示的
pack();
setVisible(true);
}

public void setup()
{
pan1.add(Labelshow);
Thread thread1=new Thread(this);//修改2 Panel没有实现Runnable接口 不能用做线程启动的
thread1.start();
}

public void run()
{
while(true)
{
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");
Labelshow.setText(sdf.format(new Date()));
try
{
Thread.sleep(1000);
}
catch(Exception e)
{
Labelshow.setText("出错错误,请重启程序");
}
}
}

public static void main(String[] args)
{
test te=new test();
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式