⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calendarframe.java~544~

📁 该系统是一个关于电子时钟的系统,他是用Java开发的一个小系统.
💻 JAVA~544~
📖 第 1 页 / 共 2 页
字号:
        //设置下一秒时间
        second++;
        if (second > 59) {
            minute++;
            second = 0;
            if (minute > 59) {
                hour++;
                minute = 0;
                if (hour > 23) {
                    hour = 0;
                }
            }
        }
        //设置下一个日期
        if (second == 0 && minute == 0 && hour == 0) {
            boolean rn = false; //是否闰年
            if (month == 1 || month == 3 || month == 5 || month == 7 ||
                month == 8 || month == 10 ||
                month == 12) {
                if (day == 31) {
                    if (month == 12) {
                        year++;
                        month = 1;
                        day = 1;
                        return;
                    } else {
                        month++;
                        day = 1;
                        return;
                    }
                } else {
                    day++;
                    return;
                }
            }
            if (month == 4 || month == 6 || month == 9 || month == 11) {
                if (day == 30) {
                    month++;
                    day = 1;
                    return;
                } else {
                    day++;
                    return;
                }
            }
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                rn = true;
            }
            if (month == 2) {
                if (rn) {
                    if (day == 29) {
                        month++;
                        day = 1;
                    } else {
                        day++;
                    }
                } else {
                    if (day == 28) {
                        month++;
                        day = 1;
                    } else {
                        day++;
                    }
                }
            }
        }
    }

    //创建Lunar类对象,返回农历日期
    public Lunar getlunar(int y, int m, int d) {
        Calendar today = Calendar.getInstance();
        try {
            today.setTime(chineseDateFormat.parse(y + "年" + m + "月" + d + "日"));
        } catch (ParseException p) {
            p.printStackTrace();
            javax.swing.JOptionPane.showMessageDialog(this, "异常发生!");
        }
        Lunar lunar = new Lunar(today);
        return lunar;
    }

    //设置图片时间显示及其星期、农历
    public void setimageview() {
        Calendar cal = Calendar.getInstance();
        String week[] = {"日", "一", "二", "三", "四", "五", "六"};
        //在相应的标签上设置时间日期,星期,农历,并显示
        jLabel14.setIcon(ic[hour / 10]);
        jLabel13.setIcon(ic[hour % 10]);
        jLabel16.setIcon(ic[minute / 10]);
        jLabel17.setIcon(ic[minute % 10]);
        jLabel18.setIcon(ic[second / 10]);
        jLabel19.setIcon(ic[second % 10]);
        jLabel20.setIcon(ic[year / 1000]);
        jLabel21.setIcon(ic[year % 1000 / 100]);
        jLabel22.setIcon(ic[year / 10 % 10]);
        jLabel23.setIcon(ic[year % 10]);
        jLabel25.setIcon(ic[month / 10]);
        jLabel24.setIcon(ic[month % 10]);
        jLabel26.setIcon(ic[day / 10]);
        jLabel27.setIcon(ic[day % 10]);
        cal.set(year, month - 1, day);
        jLabel28.setText(week[cal.get(Calendar.DAY_OF_WEEK) - 1]);
        jLabel6.setText(getlunar(year, month, day).toString());
    }
    //设置单击修改按钮的事件,移动面板的焦点.
    public void jButton3_actionPerformed(ActionEvent e) {
        lj = 1; //设置焦点在面板上的时间的初始值为1,
        jps++; //点击一次,jps标记面板到下一个面板,当超过五的时候,则从头再开始
        if (jps > 5) { //焦点已到最后时返回焦点到第一个面板
            jps = 0;
        }
        for (int i = 0; i <= 5; i++) { //设置所有边框
            jp[i].setBorder(border9);
        }
        jp[jps].setBorder(border7); //重设焦点面板的边框
    }

    //设置减少按钮的单击事件
    public void jButton1_actionPerformed(ActionEvent e) {
        lj = 1; //设置焦点在面板上的时间的初始值为1,
        if (jps == -1) {
            return; //如果无焦点面板立即结束
        }
        if (jps == 0 && --hour < 0) {
            //设置上一小时
            hour = 23;
        }
        if (jps == 1 && --minute < 0) {
            //设置上一分钟
            minute = 59;
        }
        if (jps == 2 && --second < 0) {
            //设置上一秒
            second = 59;
        }
        if (jps == 3 && --year < 1900) {
            //设置上一年
            year = 2099;
        }
        if (jps == 4 && --month < 1) {
            //设置上一个月
            month = 12;
        }
        if (jps == 5) {
            --day; //设置上一天
        }
        boolean rn = false;
        if ((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 ||
             month == 10 ||
             month == 12) && day < 1) {
            day = 31;
        }
        if ((month == 4 || month == 6 || month == 9 || month == 11)) {
            if (day < 1) {
                day = 30; //如果天数减少到小于1,设置天数为30
            }
            else if (day > 30) {
                day = 1; //如果改变后的月份天数不小于30,则设置天数为1
            }
        }
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            rn = true; //是否闰年
        }
        if ((month == 2 && rn)) {
            if (day < 1) {
                day = 29; //如果天数减少到小于1,设置天数为29
            }
            else if (day > 29) {
                day = 1; //如果改变后的月份天数不小于29天,则设置天数为1
            }
        }
        if ((month == 2 && !rn)) {
            if (day < 1) {
                day = 28; //如果天数减少到小于1,设置天数为28
            }
            else if (day > 28) {
                day = 1; //如果改变后的月份天数不大于28天,则设置天数为1
            }
        }
        this.setimageview(); //计算完时,分,秒,年,月,日后设置图片显示时间日期.
    }
    //设置增加按钮的单击触发事件
    public void jButton2_actionPerformed(ActionEvent e) {
        lj = 1; //设置焦点在面板上的时间的初始值为1,
        if (jps == -1) {
            return; //如果无焦点面板立即结束
        }
        if (jps == 0 && ++hour > 23) {
            //设置下一小时
            hour = 0;
        }
        if (jps == 1 && ++minute > 59) {
            //设置下一分钟
            minute = 0;
        }
        if (jps == 2 && ++second > 59) {
            //设置下一秒
            second = 0;
        }
        if (jps == 3 && ++year > 2099) {
            //设置下一年
            year = 1900;
        }
        if (jps == 4 && ++month > 12) {
            //设置下个月
            month = 1;
        }
        if (jps == 5) {
            //设置下一天
            ++day;
        }

        boolean rn = false; //是否闰年
        if ((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 ||
             month == 10 || month == 12) && day > 31) {
            day = 1;
        }
        if ((month == 4 || month == 6 || month == 9 || month == 11) && day > 30) {
            day = 1;
        }
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            rn = true;
        }
        if ((month == 2 && rn) && day > 29) {
            day = 1;
        }
        if ((month == 2 && !rn) && day > 28) {
            day = 1;
        }
        this.setimageview(); //计算完时,分,秒,年,月,日后设置图片显示时间日期.
    }

}

class CalendarFrame_jButton3_actionAdapter implements ActionListener {
    private CalendarFrame adaptee;
    CalendarFrame_jButton3_actionAdapter(CalendarFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton3_actionPerformed(e);
    }
}

class CalendarFrame_jButton2_actionAdapter implements ActionListener {
    private CalendarFrame adaptee;
    CalendarFrame_jButton2_actionAdapter(CalendarFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton2_actionPerformed(e);
    }
}

class CalendarFrame_jButton1_actionAdapter implements ActionListener {
    private CalendarFrame adaptee;
    CalendarFrame_jButton1_actionAdapter(CalendarFrame adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jButton1_actionPerformed(e);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -