日历记事本java

这个程序是一个用Java编写的日历记事本,包括一个时钟功能。程序能够根据当前日期显示日历,并提供了设置年份、月份和日期的选项。用户界面包括了绿色背景的按钮和自定义图标。程序还包含了对窗口关闭的监听,当用户关闭窗口时,程序会退出。
摘要由CSDN通过智能技术生成

ca.java

package clander;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Calendar;
import javax.swing.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.awt.Image;
import java.awt.Toolkit;
import java.util.Timer;

public class ca extends Frame implements ActionListener
{
    int year_now,month_now,day_now;
    inClock clock;
    Timer Time;
    CalendarPad begin=null;
    JLabel la1;//默认图片

    public ca()
    {
        ImageIcon bgIcon = new  ImageIcon();
        la1 =new JLabel(bgIcon) ;
        la1.setBounds(0, 0, this.getWidth(),this.getHeight());//设置背景标签位置
        la1.setSize(this.getWidth(),this.getHeight());
        
        Frame win = new Frame();
        Image icon = Toolkit.getDefaultToolkit().getImage("clock.gif");//修改左上角图标
        win.setIconImage(icon);
        
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();//获取当前屏幕大小
        JButton j1 = new JButton("日历记事本");
        JButton j2 = new JButton("时钟");
        JPanel button = new JPanel();
        button.setBackground(new Color(236,252,203));//绿色背景
        button.add(j1);
        button.add(j2);//添加按钮
        button.add(la1,BorderLayout.CENTER);//加入默认背景
        win.add(button,BorderLayout.CENTER);
        win.setVisible(true);
        win.addWindowListener(new WindowAdapter()//对win这个Frame实现退出程序监听功能
        {
            public void windowClosing(WindowEvent e)
            {
                System.exit(0);
            }
        });
        win.setTitle("日历记事本");//设置程序名称
        win.setSize(screenSize.width,screenSize.height);//使界面与屏幕大小相适应

        j1.addActionListener(new ActionListener()//对J1实现监听
        {
            public void actionPerformed(ActionEvent e)
            {
                begin=new CalendarPad (year_now,month_now,day_now );//构造CalendarPad
                begin.setVisible( true );
            }
        });
        j2.addActionListener(new ActionListener()//对J2‘实现监听
        {
              public void actionPerformed(ActionEvent e)
        
            {
                clock = new inClock("时钟");//构造clock这个inclock
                clock.setVisible(true);
            }
        });

        win.validate();//调用validate方法,确保组件具有有效布局
        Calendar calendar=Calendar.getInstance();
        year_now=calendar.get(Calendar.YEAR);//获取当前的年份
        month_now=calendar.get(Calendar.MONTH)+1;//获取当前的月份
        day_now=calendar.get(Calendar.DAY_OF_MONTH);//获取当前的日期
    }

    public void actionPerformed(ActionEvent e)//音乐调用
    {
    }
    public static void main(String args[])
    {
        playbgm a0=new playbgm();//构造播放音乐
        a0.pl();//播放音乐
        ca  win=new ca();
        a0.pl();
    }
}
class inClock extends JFrame implements ActionListener//时钟界面及大小
{
    clock cl;
    Button buttonGetNumber,buttonEnter;
    inClock(String s)
    {
        super(s);
        cl = new clock();
        cl.init();
        cl.start();
        add(cl);
        setBounds(150,150,215,200);
        setVisible(true);
        validate();
    }

   public void actionPerformed(ActionEvent e)
   {
   }
}
class iyear extends Box implements ActionListener//请设置年份
{
    static int iyear;
    JTextField inputyear=null;
    public iyear()
    {
        super(BoxLayout.X_AXIS);
        inputyear=new JTextField(4);
        inputyear.setForeground(Color.blue);
        inputyear.setFont(new Font("TimesRomn",Font.BOLD,14));
        add(inputyear);
        inputyear.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==inputyear)
        {
            try
            {
                iyear=Integer.parseInt(inputyear.getText());
                inputyear.setText(""+iyear);
            }
            catch(NumberFormatException ee)
            {
                inputyear.setText(""+iyear);
            }
        }
    }
    public void setiyear(int year)
    {
        this.iyear=year;
        inputyear.setText(""+year);
    }
    public int getiyear()
    {
        return iyear;
    }
}
class imonth extends Box implements ActionListener//请设置月份
{
    static int imonth;
    JTextField inputmonth=null;
    public imonth()
    {
        super(BoxLayout.X_AXIS);
        inputmonth=new JTextField(4);
        inputmonth.setForeground(Color.blue);
        inputmonth.setFont(new Font("TimesRomn",Font.BOLD,14));
        add(inputmonth);
        inputmonth.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==inputmonth)
        {
            try
            {
                imonth=Integer.parseInt(inputmonth.getText());
                inputmonth.setText(""+imonth);
            }
            catch(NumberFormatException ee)
            {
                inputmonth.setText(""+imonth);
            }
        }
    }
    public void setimonth(int month)
    {
        this.imonth=month;
        inputmonth.setText(""+imonth);
    }
    public int getimonth()
    {
        return imonth;
    }
}
class iday extends Box implements ActionListener//请设置日期
{
    static int iday;
    JTextField inputday=null;
    public iday()
    {
        super(BoxLayout.X_AXIS);
        inputday=new JTextField(4);
        inputday.setForeground(Color.blue);
        inputday.setFont(new Font("TimesRomn",Font.BOLD,14));
        add(inputday);
        inputday.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==inputday)
        {
            try
            {
                iday=Integer.parseInt(inputday.getText());
                inputday.setText(""+iday);
            }
            catch(NumberFormatException ee)
            {
                inputday.setText(""+iday);
            }
        }
    }
    public void setiday(int day)
    {
        this.iday=day;
        inputday.setText(""+iday);
    }
    public int getiday()
    {
        return iday;
    }
}
class ihour extends Box implements ActionListener//请设置小时
{
    static int ihour;
    JTextField inputhour=null;
    public ihour()
    {
        super(BoxLayout.X_AXIS);
        inputhour=new JTextField(4);
        inputhour.setForeground(Color.blue);
        inputhour.setFont(new Font("TimesRomn",Font.BOLD,14));
        add(inputhour);
        inputhour.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==inputhour)
        {
            try
            {
                ihour=Integer.parseInt(inputhour.getText());
                inputhour.setText(""+ihour);
            }
            catch(NumberFormatException ee)
            {
                inputhour.setText(""+ihour);
            }
        }
    }
    public void setihour(int hour)
    {
        this.ihour=hour;
        inputhour.setText(""+ihour);
    }
    public int getihour()
    {
        return ihour;
    }
}
class iminute extends Box implements ActionListener//请设置分钟
{
    static int iminute;
    JTextField inputminute=null;
    public iminute()
    {
        super(BoxLayout.X_AXIS);
        inputminute=new JTextField(4);
        inputminute.setForeground(Color.blue);
        inputminute.setFont(new Font("TimesRomn",Font.BOLD,14));
        add(inputminute);
        inputminute.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource()==inputminute)
        {
            try
            {
                iminute=Integer.parseInt(inputminute.getText());
                inputminute.setText(""+iminute);
            }
            catch(NumberFormatException ee)
            {
                inputminute.setText(""+iminute);
            }
        }
    }
    public void setiminute(int minute)
    {
        this.iminute = minute;
        inputminute.setText(""+iminute);
    }
    public int getiminute()
    {
        return iminute;
    }
}
class show extends JPanel implements ActionListener{
    private int syear;
    private int smonth;
    private int sday;
    private int shour;
    private int sminute;
    JButton ju;
    public show(){
        pra5 ty = new pra5();
        setLayout(new GridLayout(9,2,5,5));
        ju = new JButton("设置定时");
        add(new JLabel("请设置年份:"));
        iyear s1 = new iyear();
        add(s1);
        add(new JLabel("请设置月份:"));
        imonth s2 = new imonth();
        add(s2);
        add(new JLabel("请设置日期:"));
        iday s3 = new iday();
        add(s3);
        add(new JLabel("请设置小时:"));
        ihour s4 = new ihour();
        add(s4);
        add(n

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值