淮北师范大学简单日历的开发与实现学院计算机科学与技术专业11计算机科学与技术(非师范)学生姓名学号指导教师姓名年月日i简单日历的开发与实现作者:指导教师:摘要:目前,日历的应用非常广泛,无论是工人、农民、商人、学生还是官员,都离不开日历。通过使用日历,人们可以更好地规划未来的工作和学习等的时间安排,并且可以方便查看日期,不要自己来记忆或者记不清日期,日历的应用给人们的运算带来了极大的方便。这篇文章主要介绍用软件的方法实现简单日历的实现,包括:日历的概述,日历的开发原理和主要实现的功能,子模块的设计和实现技术。本系统需要实现以下功能:能够显示实现1950-2100年的日期,包括公历、星期。能够显示系统时间。能够设置闹钟。该日历的实现是通过Java来编写的。Java的前身是Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大范围的Internet上。1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。Java的体系结构由Java语言、Javaclass、JavaAPI、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有JavaME,JavaSE和JavaEE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持Java的开发工具中主要的7有JavaDevelopmentKit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。其中JavaDevelopmentKit简称JDK是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。关键词:日历;系统时间;计算方法ii目录引言..........................................................41简单日历系统概述.............................................41.1设计简单日历的背景........................................42系统需要......................................................42.1设计分析..................................................42.1.1需求分析..............................................42.2开发环境..................................................42.2.1运行环境..............................................42.2.2开发工具..............................................42.2.3关于Ecilpes..........................................43系统设计......................................................53.1功能说明..................................................53.1.1系统功能分析..........................................53.2系统大概..................................................53.2.1设计思路..............................................53.2.2日历运算流程图........................................64系统的实现...................................................64.1窗口的设计................................................64.1.1设计步骤..............................................64.1.2部分操作截图..........................................94.2程序核心代码.............................................11iii4.2.1初始化组件............................................114.2.2初始化数据............................................124.2.3showCalendar显示日历函数.......................................124.2.4mouseClicked函数...............................................134.2.5Timer显示时间函数.....................................135系统运行与测试...............................................145.1运行界面.................................................145.2测试.....................................................155.2.1测试研究与选择.......................................155.2.2测试环境.............................................155.3程序代码.................................................15总结..........................................................23参考文献......................................................234引言本设计主要是为了让人们更好地使用日历,可以方便的查看日期,并且可以设置日志记录或闹钟,本设计主要在每月日期的显示,以及系统时间的显示设计上,还可以在页面上输入要查找的年份并且显示。1简单日历概述1.1设计简单日历的背景人们在日常学习、工作和生活过程中,日历的作用是不容置疑的,不仅可以让我们用来查看日期和是星期几了,还可以在有事的某一天添加日志或闹钟来提醒自己,让我们忘掉重要事的可能大大降低。2系统需求2.1设计分析2.1.1需求分析本软件主要用于计算机WindowsXP以上的用户使用,这次课程设计一般是实现简单日历的功能。需要程序实现:日期的显示功能;还要实现日期与星期的查询并跳转等功能。另外还要实现添加日志或闹钟的功能。可以在设定的那一天显示提醒。2.2开发环境2.2.1运行环境系统是在eclipse环境下开发的,在Windows98/Windows2000/WindowsNT/WindowsXP平台下运行均可。2.2.2开发工具Java语言2.2.3关于eclipseVisualEclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。5这种平等和一致性并不仅限于Java开发工具。尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。基于Eclipse的应用程序的一个突出例子是IBMRationalSoftwareArchitect,它构成了IBMJava开发工具系列的基础。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、RedHat及Sybase等。Eclipse是一个开放源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集成者,使用者只需下载各种语言的插件即可。3系统设计3.1功能说明3.1.1系统功能本系统需要实现以下功能:日期和星期的显示,年份的查找(既可以由上下键来实现上一年和下一年查找的操作),月份的查找(既可以由上下键来实现上一月和下一月查找的操作),日志的创建和删除功能。3.2系统大概3.2.1设计思路1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。2.输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月6一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。3.2.2日历运算流程图图3-1日历运算流程图4系统的实现4.1窗口的设计4.1.1设计步骤打开Eclipse,在文件中点击新建,在弹出框内选择project,选择Java