Java实训——桌面日历

java实现《桌面日历》源码,答辩ppt,实习计划书,实习报告下载链接

https://download.csdn.net/download/weixin_43042683/86949560?spm=1001.2014.3001.5503

一、综合训练任务

设计日历记事本要求:带有日程提醒功能的桌面日历

(1)显示信息: 用户可以向前翻页查询上年的日期,也可以向后翻页查询下年的日期用户可以向前翻页查询上月的日期,也可以向后翻页查询下月的日期。对应的农历节假日和休息日进行了红色标记。

(2)定时提醒:用户可以针对某一天工作需求来添加、编辑这日程提醒信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话框。

二、分析与设计

开发工具

本次设计主要采用eclipse开发平台。

界面设计

一个主面板,然后添加三个面板,分别用于实现不同的作用,第一个面板是用于设立各个组件包括按钮下拉列表,编写事件以实现不同的功能。第二个建立了很多标签用于日期的主要显示,第三个是用来显示系统时间。在主界面上有记事本按钮,点击之后会弹出记事窗口,记事窗口,主要是在一个面板各个标签、按钮和文本框的组合,主要有添加提醒事件,添加提醒事件。

类之间的关系

    本项目主要有四个类(MainFrame类、Nowtime类、Lunar类、Notepad类)。MainFrame类用于实现整个界面布局和中国节日的输出。Nowtime类主要实现系统时间的显示。Lunar类用于实现农历和公历的转换。Notepad类用于实现记事功能。

 三、详细设计说明

1.MainFrame类

Main 函数:程序的主入口。

日历界面的布局。继承Frame类,并实例CalendarBean类以获得日历。在该类中设置了四个按钮及其监听器:<<>>:点击可翻阅上下年的日历。<>:点击可翻阅下下月的日历。两个下拉列表及其监听器:用户通过在下拉列表中选择年份及月份即可查看对应的日历。记事本:点击可添加一项需要提醒的事件以及提醒时间。 点击后弹出Due类的实例化对象。在该界面可编辑提醒具体时间以及事件。

 2. Lunar类

 农历转换算法getLunar()传统节日的定义

3. Notepad类

引入并实例化了Calendar对象,用于获取当前服务器的具体时间精确;定义变量存储用户输入的提醒事件的具体时间以及事件;定义保存按钮,用户点击后弹出提示对话框“保存成功”。点击“确定”按钮后,通过diapose()方法使对话框和记事界面同时关闭;引入并实例化了SipmleDateFormat对象用于设置时间格式。定义task类,该类继承TimerTask,为使用schedule方法做准备。再将用户的提交时间传入schedule方法,实现定时提醒;当到指定时间时,程序会弹出对话框,对话框内显示用户设置的提醒事件。

4. Nowtime类

为 Canvas 类创建子类NowTime,创建自定义组件mainframe。在NotTime函数中定义界面大小和背景色,进行线程实例化并调用线程。重写paint ()方法,并调SimpleDateFormat函数格式化显示时间。 

四、调试与测试

调试

基本功能已经实现,包括项目所要求的农历与公历的计算与转换,可以针对日期记事,以及预订时间提醒。但仍有些问题亟待解决和功能需要完善。

1.年份只能显示1900—2049这150年。当所设置的年份不在这个范围内系统无法显示日期将会报错。如下图:

解决的方法就是增加农历十六进的年月份的表示。

2.记事本时间没有输入或输入非法会直接报错,不能重新编辑。运行报错如下图:

3.记事无法保存在本地,日历窗口关闭,无法弹出所记事的提醒信息。

解决方法:就是在与本机文件相关联,将存入的事件记录在本机上,当重新运行时,文本中的记录会传到项目中。

测试

1.显示功能

(1)所初步展示的界面为系统当月的日期,界面最底层显示当前系统时间,精确到分。

(2)可通过“<<”“>>”按钮进行上年下年的转换,也可以通过下拉列表对年份进行改变显示当年的日期;可通过“<”“>”按钮进行上月、下月的转换,也可以通过下拉列表对月份进行改变显示当月的日期。

2.提醒功能

(3)点击记事本按钮,弹出记事窗口。默认提醒的年月日为当前的年月日,可以进行重新编辑,编辑提醒时间和提醒事件。

(4)默认提醒的年月日为当前的年月日,可以进行重新编辑,编辑提醒时间和提醒事件。

(5)点击保存按钮,则弹出保存验证窗口。点击确定,进行保存。

(6)当设置的提醒时间和系统时间相等时,则弹出提醒窗口。点击确定按钮则窗口关闭。

  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java课程设计实训大作业:记事本+简易计算器+聊天系统+日历+中英查询 基础任务一:设计日历软件 根据如下图,综合运用GUI编程、事件处理、Calendar类应用等知识设计一款月历,要求能通过输入(或选择)年月的方式正确显示当前月份的所有日期。 基础任务二:设计中英查询软件 根据Java面向对象程序设计相关理论,及GUI编程、事件处理、数据库编程等技术,设计一个如下图所示的“中英文释义查询”程序。输入英文单词,查询数据库将对应的中文显示在下框中;输入中文,查询数据库将对应的英文单词显示在下框中。 提升任务三:设计简易记事本软件 1.使用Java图形界面组件设计记事本软件的界面,参考如图所示。 2.程序代码规范,逻辑正确,能够正常运行。 3.“文件”菜单,包括“新建”、“打开”、“保存”、“另存为”和“退出”等功能。 提升任务四:设计简易计算器软件 1.使用Java图形界面组件设计软件,界面如图所示。 2.软件能够满足基本的“加、减、乘、除”等运算要求。 3.程序代码清晰,语法规范,结构合理,逻辑正确。 进阶任务五:自选主题开发一个应用软件(如在线聊天系统,学籍管理系统等)下面给的软件界面只是参考,同学们可以根据自己的想法进行设计。 1.软件界面美观、功能完善软件,导航清晰,操作方便,使用菜单栏、工具栏、布局管理器、按钮、表格等多种Java图形界面组件。 2.程序代码清晰,语法规范,结构合理,逻辑正确。 3.功能完善,程序代码优化,执行效率高,具有较好可维护性和可扩展性。 4.软件功能设计具有一定的难度和创意。
计算机科学与技术本科专业 Java课程设计任务书 题目: 日历记事本 学生姓名: 学号: 班级: 题目类型:软件工程(R) 指导教师: 一. 题目简介 该设计要求设计一个带有日程提醒功能的日历。 通过该题目的设计,培养学生面向对象程序设计的思想,要求学生达到熟练掌握Java语言的基本知识和技能,基本掌握面向对象程序设计的基本思路和方法,能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。同时强调好的程序设计风格,提高解决实际问题的能力。 二. 主要任务 1、查阅文献资料,一般在5篇以上; 2、应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; 3、分析系统中的各个实体及它们之间的关系包括属性和方法; 4、根据问题描述,设计系统的类层次; 5、完成类层次中各个类的描述(包括属性和方法); 6、完成类中各个成员函数的定义; 7、完成系统的应用模块; 8、完成系统的软件开发和测试工作; 9、撰写设计说明书; 10、做好答辩工作。 三. 主要内容、功能及技术指标 (一) 基本要求: 编写一个Applet小应用程序能够显示时间,当用户最小化Applet时,程序会 被挂起,当还原Applet时,程序又会恢复执行,同时Applet中应显示挂起和恢复的时间。 (二)系统要求: 1、要求利用面向对象的方法以及Java的编程思想来完成系统的设计; 2、要求在设计的过程中,建立清晰的类层次; 3、在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法; 4、在系统的设计中,要求运用面向对象的机制(继承、派生及多态性)来实现系统功能。 5、该系统的要求: (1)显示信息:用户可以向前翻页查询前一个月的日期,也可以向后翻页查询下一个月的日期。 (2)定时提醒:用户可以针对某一天来添加,删除和编辑这一天的日程提醒信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话框; (3)查询信息:用户可以查询到某个月的所有提示信息。 四. 提交的成果 1. 设计说明书一份,内容包括: 1) 中文摘要100字;关键词3-5个; 2) 序言; 3) 基本要求实现(包括程序流程图;部分代码;) 4) 系统要求实现 系统分析与设计(包括设计系统的类层次,各个实体及它们之间的关系) 详细设计(包括各个类的详细设计,如数据成员及成员函数的设计); 系统测试(包含测试方案、测试用例、测试结果及软件可靠性分析); 软件使用说明书(核心界面说明); 5)设计总结、参考文献、致谢等。 五. 主要参考文献 [1]曲朝阳,杨杰明等.Java程序设计. 北京: 清华大学出版社,2008.10 [2]耿祥以,张跃平.Java大学生实用教程. 北京: 电子工业出版社,2012.6 [3]明日科技.Java经典编程.北京:清华大学出版社,2012.10 [4]李尊朝,苏军.Java语言程序设计.北京:中国铁道出版社,2004.2 [5]王博. 面向对象的建模、设计技术与方法. 北京希望电脑公司,1990. 六. 各阶段时间安排(共2周): 周次 日期 内容 地点 第1周 星期一 教师讲解设计要求,准备参考资料 教室 星期二 分析系统,方案设计 实验室 星期三~五 编程 实验室 第2周 星期一~三 编程、调试程序 实验室 星期四 写设计书 实验室 星期五 答辩 实验室

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行秋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值