广工计算机选修Jav课程设计.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
广工计算机选修Jav课程设计

《Java语言》课程期末作业 题 目 第3题: 时间日历 学 院 专 业 班 别 学 号 姓 名 2013年 月 日 课程题目 第3题:时间日历 设计一个时间日历,交互性要求:能够设置时间。【最大选题人数:6】 其它功能可自行扩展。 二、题目分析与设计 1、开发环境:Eclipse 2、题目要求设计一个时间日历,可以显示时间,可以显示日历表,并且可以设置时间。(1)时间显示部分有指针时钟形式和数字形式两种,默认同步系统时间。(2)日历表显示为一版日历表,默认同步系统日期,用蓝色标记当天日期,星期六日的日期为红色,其他为黑色。(3)设置部分,允许用户自由输入时间日期,时间显示部分和日历表同时做出相应改变。 软件功能架构图如下: 界面设计过程:整体分为上中下三个部分,最上层为设置模块,中间为日历表模块,最下层为时钟模块。在设置模块中用户可快速输入正确的时间日期格式来设置时间日期,用JTestField类实现时间日期的输入,默认的设置值为0000-00-00 00:00:00,即0000年00月00日00时00分00秒。日历表模块位于设置模块的下方,背景颜色为黄色,此模块设计了一个边框来框住,突出各模块的独立性,边框的左上方标记有“日历”字样(边框由TitledBorder类实现),日历表模块内有两个下拉按钮分别可以快速地选择年份和月份(下拉按钮由JComboBox类实现),而下拉按钮的下方区域用于显示所选年月的详细日历情况,并在日期的上方标记有星期,从“日”到“六”。日期的颜色显示上,当天的日期为蓝色,星期六日为红色,其他为黑色,这样使得用户更方便查询,界面也显得更美观。时间模块位于最下方,此模块也设计了边框和“时间”字样,时间模块的背景颜色为深灰色,在指针时钟上,刻度盘和指针都用了比较鲜艳的黄色、绿色、靛色等,形成荧光的效果,而数字时钟的数字为白色,并用Graphics类的DrawRect()方法绘制一个指定矩形的边框框住数字,边框为靛色,与沉暗的背景颜色形成鲜明对比,方便用户观察也美化了界面。 整体效果如下图: 程序逻辑的实现: 设置功能的实现:首先新建一个JPanel对jp1,一个JTestField对象testField,testField用于获取用户输入的时间日期信息。再新建一个JButton对象button,显示为“设置时间日期”,在此按钮上添加监听,当鼠标单击时触发,将实例化的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)方法设置属性,

文档评论(0)

ptaosqi + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

认证主体张**

1亿VIP精品文档

相关文档

相关课程推荐