广工计算机选修Java课程设计.doc_第1页
广工计算机选修Java课程设计.doc_第2页
广工计算机选修Java课程设计.doc_第3页
广工计算机选修Java课程设计.doc_第4页
广工计算机选修Java课程设计.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java语言课程期末作业题 目 第3题: 时间日历 学 院 专 业 班 别 学 号 姓 名 2013年 月 日1、 课程题目 第3题:时间日历设计一个时间日历,交互性要求:能够设置时间。【最大选题人数:6】 其它功能可自行扩展。二、题目分析与设计 1、开发环境:Eclipse2、题目要求设计一个时间日历,可以显示时间,可以显示日历表,并且可以设置时间。(1)时间显示部分有指针时钟形式和数字形式两种,默认同步系统时间。(2)日历表显示为一版日历表,默认同步系统日期,用蓝色标记当天日期,星期六日的日期为红色,其他为黑色。(3)设置部分,允许用户自由输入时间日期,时间显示部分和日历表同时做出相应改变。软件功能架构图如下:程序窗口日历功能设置功能时钟功能指针时钟形式和数字形式显示时间设置详细时间日期使得时钟和日历同步改变日历表形式和数字形式显示日期3、 界面设计过程:整体分为上中下三个部分,最上层为设置模块,中间为日历表模块,最下层为时钟模块。在设置模块中用户可快速输入正确的时间日期格式来设置时间日期,用JTestField类实现时间日期的输入,默认的设置值为0000-00-00 00:00:00,即0000年00月00日00时00分00秒。日历表模块位于设置模块的下方,背景颜色为黄色,此模块设计了一个边框来框住,突出各模块的独立性,边框的左上方标记有“日历”字样(边框由TitledBorder类实现),日历表模块内有两个下拉按钮分别可以快速地选择年份和月份(下拉按钮由JComboBox类实现),而下拉按钮的下方区域用于显示所选年月的详细日历情况,并在日期的上方标记有星期,从“日”到“六”。日期的颜色显示上,当天的日期为蓝色,星期六日为红色,其他为黑色,这样使得用户更方便查询,界面也显得更美观。时间模块位于最下方,此模块也设计了边框和“时间”字样,时间模块的背景颜色为深灰色,在指针时钟上,刻度盘和指针都用了比较鲜艳的黄色、绿色、靛色等,形成荧光的效果,而数字时钟的数字为白色,并用Graphics类的DrawRect()方法绘制一个指定矩形的边框框住数字,边框为靛色,与沉暗的背景颜色形成鲜明对比,方便用户观察也美化了界面。整体效果如下图:4、 程序逻辑的实现:设置功能的实现:首先新建一个JPanel对jp1,一个JTestField对象testField,testField用于获取用户输入的时间日期信息。再新建一个JButton对象button,显示为“设置时间日期”,在此按钮上添加监听,当鼠标单击时触发,将实例化的Clock和Calendar的相关时间变量改变,并刷新界面完成时间日期的设置。 刷新界面,完成时间日期设置调用实例化的Clock和Calendar的时间变量,更改为所设置的时间日期创建文本框和按钮输入正确格式的日期和时间点击按钮触触发监听日历功能的实现:创建一个类,类名为myCalendar。首先用JComboBox类创建年和月的选择下拉按钮,添加年月标识并布局到JFrame的相应位置。然后初始化日历表的日期并绘制,对日历表的大小、颜色、布局等设定参数。创建setDay()方法来显示所选择的月的天数和各个日期所在的位置和各个日期的颜色,此方法首先获取系统的年月或者从下拉按钮中选择的年月。创建字符串数组week,“日”到“六”,用于显示各个星期。绘制出日历表,当天日期颜色为蓝色。创建日历模块设置模块的参数创建年月下拉按钮和年月标识绘制出日历表打印出各星期获取时间时钟功能的实现:创建类DrawClock,继承JPanel类和实现Runnable接口。首先构造时钟面板,并对时钟面板设定参数,然后重写paint(Graphics g)方法,在这方法内江绘制时钟的一帧,此方法首先确定时钟的圆心位置,再根据集合知识计算出表盘12个刻度的位置,并将这12个刻度绘制在对应的位置上,然后获取系统的或者用户设置的时间,将该时间转化为字符串表示并根据设定的字体和颜色绘制到时钟面板内的指定位置作为数字时钟。再根据几何知识计算出时针、分针、秒针的位置,最后根据设置线宽和颜色绘制完整的指针时钟到界面中。创建时间面板设置面板参数绘制盘表获取当前时间绘制数字时钟绘制完整的指针时钟主界面的逻辑实现:程序运行后,构造一个主类Main,继承JFrame。首先向系统获取当前日期,然后引用主类的构造方法,设置窗口的标题为“时间日历”,实例化Clock和myCalendar。创建JPanel类对象jp1,在jp1中加入文本输入框和设置按钮,在文本输入框中添加事件监听器。再创建JPanel类对象jp2,在jp2中加入类myCalendar的实例化对象。然后把jp1放入jp2中,再用setContentPane(Clock)方法设置属性,再在Clock中加入jp2。图解:Main()开始调用主类的构造方法标题为“时间日历”实例化Clock和myCalendar创建JPanel对象jp1加入文本输入框和设置按钮添加监听器创建jp2,向其中加入myCalendar的实例化对象,并将jp1加入到jp2中设置setContentPane(Clock)属性把jp2加入到Clock中程序结束3、 测试分析测试时的系统时间为 2013年6月2日 星期日(1)程序默认情况下:启动程序,观察程序运行情况。预期结果:设置位置的默认值为0000-00-00 00:00:00,日历表正确显示当前年月的日历和各星期的位置,星期六日这两列的颜色为红色,当天日期的颜色为蓝色,其他为黑色。时间模块正确显示当前时间的数字时钟,正确画出指针时钟,各指针的指向与数字时钟同步运动。实际结果:与预期结果相符,如下图 (2) 设置模块测试1:重启程序,默认情况下(0000-00-00 00:00:00)点击“设置时间日期”按钮。预期结果:日历没有改变仍为当前日期,指针时钟和数字时钟都初始化到0000-00-00 00:00:00后开始运动。实际结果:日历没有改变,指针时钟初始化到00:00:00,数字时钟为0002-11-30 00:00:00,如下图(3) 设置模块测试2(只能输入小于当前年份10年大于当前当前年份20年的年份):重启程序,向输入框中输入2013-01-04 05:20:00,预期结果:日历模块和时间模块都正确指示输入的时间。实际结果:与预期结果相符合,如下图(4) 下拉按钮测试1:重启程序,选择年下拉按钮的第一项(2003),月下拉按钮的第一项(1),查看极限情况的显示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论