import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.*;
public class Demo5 extends JFrame implements Runnable, ActionListener {
JButton jb1, jb2, jb3;
JLabel jl;
Thread thread = null;
boolean flag;
Calendar i=Calendar.getInstance();
int nian=i.get(Calendar.YEAR);
int yue=i.get(Calendar.MONTH);
int tian=i.get(Calendar.DAY_OF_MONTH);
int shi=i.get(Calendar.HOUR_OF_DAY);
int feng=i.get(Calendar.MINUTE);
int miao=i.get(Calendar.SECOND);
Demo5() {
jb1 = new JButton("开始");
jb2 = new JButton("停止");
jb3 = new JButton("切换");
jl = new JLabel("");
}
public void init() {
this.setTitle("计时器");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.setLocation(500, 400);
this.setSize(500, 300);
this.setLayout(new FlowLayout());
this.add(jl);
this.add(jb1);
this.add(jb2);
this.add(jb3);
jb1.addActionListener(this);
jb2.addActionListener(this);
jb3.addActionListener(this);
}
public static void main(String[] args) {
new Demo5().init();
}
@Override
public void run() {
int i=miao;
int k=feng;
int y=shi;
while (flag) {
jl.setText(nian+"-"+(yue+1)+"-"+tian+" "+y+":"+k+":"+i);
if(i>=59){
k+=1;
i=-1;
}
if(k>=59){
y+=1;
k=0;
}
try {
Thread.currentThread().sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
if(flag) {
i++;
}
}
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource().equals(jb1)) {
if (thread == null) {
thread = new Thread(this);
thread.start();
}
flag=true;
} else if (e.getSource().equals(jb2)) {
flag=false;
}
}
}
添加回答
举报
0/150
提交
取消