请JAVA高手帮忙注释下!!加上设计思路!!谢谢
来源:百度知道 编辑:UC知道 时间:2024/06/22 22:11:58
import java.awt.*;
import java.awt.event.*;
import java.util.Date;
import java.text.*;
class TestTimer extends JFrame implements ActionListener{
Timer timer;
JLabel display = new JLabel();
SimpleDateFormat dateFmt = new SimpleDateFormat("hh:mm:ss");
TestTimer(){
getContentPane().setLayout(new FlowLayout());
timer = new Timer(1000,this);
timer.setRepeats(true);
timer.setInitialDelay(1000);
timer.start();
getContentPane().add(display);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(200,100);
setVisible(true);
} // TestTimer
public void actionPerformed(ActionEvent e){
if(e.getSource() == timer){
display.setText(dateFmt.format(new Date()));
}
} // actionPerformed
public static void main(String[] args){
TestTimer tt = new TestTimer();
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.Date;
import java.text.*;
class TestTimer extends JFrame implements ActionListener {
// 继承JFrame类--用来画框框的
// 实现ActionListener接口--事件监听
Timer timer;//声明一个Timer对象,Timer是javax.swing包中的类,计时监听器
JLabel display = new JLabel();//声明一个JLabel对象,画框框用的
SimpleDateFormat dateFmt = new SimpleDateFormat("hh:mm:ss");
//时间类,有格式化时间的作用
TestTimer() {
getContentPane().setLayout(new FlowLayout());
//getContentPane()是JFrame的方法,相当于得到JFrame的区域
//setLayout是设置布局
timer = new Timer(1000, this);
//构造Timer(int delay, ActionListener listener)
//因为这个类实现了ActionListener接口,所以监听器可以隔1000毫秒通知这个类(this),构造方法摘要
timer.setRepeats(true);
//每隔1000毫秒通知一次,如果设置成false则只会通知一次
timer.setInitialDelay(1000);
//设置初始延迟,这段可以不要,因为构造中已经设置了
timer.start();
//启动计时监听器,向外部的监