📄 clock.java
字号:
import java.util.Calendar;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Clock extends JPanel implements ActionListener
{
int hh,mm,ss,y,m,d;
String st;
MyCalendar calendar;
Calendar calendar1=Calendar.getInstance();
Label title;
JTextField showhour,showminute,showsecond;
JLabel s1,s2;
JButton settime,ensure,cancel;
Thread
boolean Ifstart=false;
boolean Ifset=false;
public Clock(MyCalendar calendar)
{
this.calendar=calendar;
y=calendar.getYear();
m=calendar.getMonth();
d =calendar.getDay();
JPanel titlePanel=new JPanel();
titlePanel.setLayout(new GridLayout(2,2));
Label title=new Label("当前日期时间为:");
title.setFont(new Font ("TimesRoman",Font.BOLD,20));
title.setForeground(Color.blue);
titlePanel.add(title,BorderLayout.CENTER);
JLabel s1=new JLabel(" : ");
JLabel s2=new JLabel(" : ");
Label s3=new Label(" ");
Label s4=new Label(" ");
showhour = new JTextField(2);
showhour.setForeground(Color.red);
showminute=new JTextField(2);
showsecond=new JTextField(2);
showsecond.setEditable(false);
showhour.setEditable(false);
showminute.setEditable(false);
settime=new JButton("设置时间");
cancel=new JButton("取消");
ensure=new JButton("确定");
Box box1=Box.createHorizontalBox();
box1.add(ensure);
box1.add(s4);
box1.add(cancel);
JPanel timePannel=new JPanel();
timePannel.setLayout(new GridLayout(4,4));
Box box=Box.createHorizontalBox();
box.add(showhour);
box.add(s1);
box.add(showminute);
box.add(s2);
box.add(showsecond);
timePannel.add(box,BorderLayout.CENTER);
timePannel.add(s3);
timePannel.add(settime,BorderLayout.SOUTH);
setLayout(new BorderLayout());
add(titlePanel, BorderLayout.NORTH);
add(timePannel, BorderLayout.CENTER);
add(box1,BorderLayout.SOUTH);
settime.addActionListener(this);
ensure.addActionListener(this);
cancel.addActionListener(this);
showtime();
timer=new Timer (1000,this);
Ifstart=false;
}
public void showtime()
{
if(Ifset==false)
{
hh=calendar1.get(Calendar.HOUR_OF_DAY);
mm=calendar1.get(Calendar.MINUTE);
ss=calendar1.get(Calendar.SECOND);
}
else
{
hh=Integer.parseInt(showhour.getText());
mm=Integer.parseInt(showminute.getText());
ss=Integer.parseInt(showsecond.getText());
calendar1.set(y,m,d,hh,ss,mm);
//Ifset=false;
}
if(hh<10) st="0"+hh; else st=""+hh;
showhour.setText(st);
if(mm<10) st="0"+mm; else st=""+mm;
showminute.setText(st);
if(ss<10) st="0"+ss; else st=""+ss;
showsecond.setText(st);}
public void actionPerformed(ActionEvent e)
{
if (Ifstart==false)
{
timer.start();
Ifstart=true;
}
if(e.getSource()==settime)
{
Ifset=true;
showsecond.setEditable(true);
showhour.setEditable(true);
showminute.setEditable(true);
showtime();
}
else if(e.getSource()==timer)
{
showtime();
}
else if(e.getSource()==cancel)
{
showhour.setEditable(false);
showminute.setEditable(false);
showsecond.setEditable(false);
Ifset=false;
showtime();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -