课程设计报告日历管理器.doc

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

C++课程设计报告 ( 2010 -- 2011 年度第 二 学期) 日历管理器的设计与实现 专业 计算机科学与技术 学生姓名 班级 学号 指导教师 完成日期 2011年 7月 日 目 录 1 概 述 1 1.1 课程设计目的 1 1.2 课程设计内容 1 2 系统需求分析 1 2.1 系统目标 1 2.2 主体功能 1 2.3 开发环境 2 3 系统概要设计 2 3.1 系统的功能模块划分 2 3.2 系统流程图 3 4系统详细设计 3 4.1系统主界面设计 3 4.2 计算当前日期模块设计 5 4.3年份跳转模块设计 5 4.4 界面修改模块模块设计 7 5 测试 7 5.1 测试方案 7 5.2 测试结果 7 6 小结 8 参考文献 10 附 录 11 附录1 源程序清单 11 日历管理器的设计与实现 1 概 述 1.1 课程设计目的 1、巩固并加深学生对C++语言程序设计知识的理解; 2、培养学生面向对象的程序设计思想,使学生认识面向过程和面向对象两种设计方法的区别; 3、进一步掌握和应用VC++ 6.0集成开发环境; 4、提高运用C++语言解决实际问题的能力; 5、初步掌握开发小型实用软件的基本方法,能独立设计、实现具有实际功能的小系统; 6、掌握书写程序设计开发文档的能力(书写课程设计实验报告)。 1.2 课程设计内容 课程名称:日历管理器 说明:模仿现实生活中的挂历,显示日历。 要求: 1)当前页以系统当前日期的月份为准,显示当前月的每一天(显示出日及对应的星期几),当系统日期变到下一月时,系统自动翻页到下一月。 2)可以实现日期的加法运算,即在日期相加的菜单选项中增加日期加天数,结果为新日期。 3)根据用户输入的年份,自动产生每个月的日期列表。包括输入非法数据(如负数、日期超过31天等情况)的识别显示功能。 4)自定义显示日历的形式,如显示星期及英文形式的月份的功能 2 系统需求分析 2.1 系统目标 能模仿现实生活中的挂历,显示当前日期,且能实现日期的跳转来方便用户。 2.2 主体功能 1)当前页以系统当前日期的月份为准,显示当前月的每一天(显示出日及对应的星期几),当系统日期变到下一月时,系统自动翻页到下一月。 2)可以实现日期的加法运算,即在日期相加的菜单选项中增加日期加天数,结果为新日期。 3)根据用户输入的年份,自动产生每个月的日期列表。包括输入非法数据(如负数、日期超过31天等情况)的识别显示功能。 2.3 开发环境 Visual C++ 6.0 3 系统概要设计 3.1 系统的功能模块划分 此次系统的功能模块主要分为:当前日期计算模块、日期跳转模块和界面修改模块。 当前日期计算模块:计算系统当前日期,并第一时间显示出来,方便用户能第一时间了解当前日期。 日期跳转模块:主要针对用户想查看其他年份的日期情况设计,用户在想查看某个年份日期的时候只需操作一下,输入想查看的年份,该模块便会位用户显示出该年的日期情况。 界面修改模块:现代产品功能丰富,因为用户的需求很多,该模块旨在提供给用户更多的选择空间。该模块在内部提空多种界面颜色,用户只需在需要时执行操作便可更换界面上某个位置显示的颜色,大大增加软件的趣味性。 图 3-1 系统功能模块图 3.2 系统流程图 图3-2 系统流程图 4系统详细设计 4.1系统主界面设计 在该系统中我使用了MFC对主界面进行编辑,主界面最显眼的是日历部分,在日历上方是菜单栏,可以提供一些操作的按钮,实现该系统的多元功能。实际效果如下图所示: 图4-1 菜单栏效果图 图4-2 系统主界面图 该系统中还会出现一些输入框和提示框,这些框如下图: 图4-3 处于编辑模式下的输入框 在这个编辑输入框中的显示“Enter Year!!”的部件是一个标签,起提示作用; 写着“编辑”二字的框是个文本框,用来获取用户输入的年份数据; 写着“OK”和“cancle”的两个部件分别是两个功能按钮,在编码完成后即可用来实现操作。 图4-4 编辑模式下的信息提示框 4.2 计算当前日期模块设计 该系统在这个模块中建立了Ccalender类,并建立m_cnDAY、m_cnYEAR、m_nUserYear函数来调用系统当前日期以实现该模块功能。 该系统还建立了DialogTime类,在这个类中系统使用了switch语句,建立了m_szDays[7]数组来对日期进行从周日到周六的排序,以此实现显示出的日历和我们生活中的日历类似。要实现对日期的排列,首先需要对年份进行闰年的判断,其判断流程图如下图: 图4-3 判断闰年流程图 4.3年份跳转模块设计 该系统在这个模块中建立了yeardialog类,在类中通过使用DDX_Te

文档评论(0)

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

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

1亿VIP精品文档

相关文档