桌面电子日历制作_第1页
桌面电子日历制作_第2页
桌面电子日历制作_第3页
桌面电子日历制作_第4页
桌面电子日历制作_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、软件设计培训-电子日历软件设计作者:学生编号。学校:自动化工程学院班级级别:教员:自动化工程学院专业:自动化讲师:念月记林摘要这一课是设计一个桌面日历,它可以显示数字形式的日期和时间,并修改和调整时间。因此,有必要首先显示日历,并从系统中获取初始化时间。然后根据需要显示,用软件修改时间,保存修改后的时间,这样修改后时间可以独立计时。修改时间时,您不能同时修改时间、分钟和秒钟中的任何两个或三个。当输入值不在正常范围内时,软件将自动报告错误。同时,该软件还可以查询和调整日期。同样,您不能同时修改日期、月份和年份中的任意两个或三个。当输入值不在正常范围内时,软件会弹出一个对话框报告错误。因为本设计是

2、由C builder软件设计的,所以程序部分看起来很简单;但是,由于C builder中所需的组件属性值类型是固定的,所以在调试过程中出现了很多错误和漏洞。因此,一些看似不必要的程序是必要的。关键词:构建器,万年历,C语言目录第一章许上.31.1设计目的.31.2设计内容和要求.31.3设计任务和工作量要求.3第二章设计理念和程序.42.1总体设计思路和总体流程图.42.1.1总体设计理念.42.1.2一般流程图.42.2模块流程图和程序介绍.62.2.1时间获取.62.2.2检查时间的正确性.72.2.3更新日期和时间.102.2.4修改时间和日期.12第3章补丁简介.133.1多个输入框不

3、能同时为空。.133.2获得.在不同的时间段14第四章软件操作说明.164.1钥匙介绍.174.1.1按下.今天174.1.2修改密钥.174.1.3取消按钮打开.174.1.4按下取消按钮.174.2输入框简介.17第四章经验.18参考.18附录.19第一章线索理论1.1设计目的本次实训是自动化(精品课程)专业的重要实践环节之一,是学生完成程序设计课程后的一次综合实践。具体培训目标和任务如下:(1)巩固和深化学生对程序设计语言课程基础知识的理解和掌握;(2)掌握程序设计和调试的基本技能;(3)掌握编写程序设计指令文档的能力;(4)提高运用编程语言解决实际问题的能力。1.2设计内容和要求使用相

4、关编程语言设计电子日历软件设计程序,要求能够显示日历和实现信息,具体实现以下要求:(1)年、月、日可以以数字形式显示;(2)能以数字形式显示小时和分钟;(3)具有时间修改和调整功能。1.3设计任务和工作量要求(1)绘制系统工作的软件流程图;(2)编写软件培训的设计规范;(3)给出相应子程序的入口参数和出口参数;(4)说明软件的基本原理和实现方法;(5)程序及相关指令的可靠性设计;(6)必须编译由链接生成的可执行文件。第二章设计理念和程序2.1总体设计思路和总体流程图2.1.1总体设计理念首先,程序应该有一个初始输出时间。因为我们正在做一个由C builder设计的日历软件,我们可以从系统中获取

5、时间进行初始化,并在初始化后直接输出当前的日期和时间。其次,我们需要通过这个软件查询或修改时间。由于软件具有直接输入的功能,输入时间可能不存在,因此有必要在获取时间后检查时间的正确性。然后,当我们输入的时间是合法的,时间仍然在过去,所以这个软件必须能够自动更新时间,即自动刷新时间,并实现计时功能。最后,当一切正常时,日期和时间应该在指定的区域输出。2.1.2一般流程图如图1所示,这个流程图只是对这个设计的粗略描述,它是一个整体框架。在这个流程图中,我们可以看到我的设计思想和软件的一般流程。成组输出日期和时间获取日期和时间检查正确性自主刷新时间打开开头图1:一般流程图2.2模块流程图和程序介绍2

6、.2.1获取时间获取时间有两种方法,一种是在初始化时从系统中获取日期和时间;第二,当我们想要查询日期或调整时间时,获取我们输入的日期和时间。因为我们需要能够独立地调整每一年、每一个月、每一天、每一小时、每一分钟和每一秒钟,在这里我添加了六个CSpinEdit组件,每个组件的程序基本上是相同的。流程图如图2所示。成组从系统中获取日期和时间修改年、月、日、小时和秒打开开头图2:采集时间2.2.2检查时间的正确性检查时间的正确性分为两部分,一是检查日期的正确性;第二是每分钟的准确性。(1)检查日期的正确性在检查年、月和日的正确性时,我们必须首先判断年是否是闰年,因为如果年是闰年,二月有29天;如果那

7、一年是正常的一年,二月有28天。这将影响对以后节目的判断和日期的改变。判断闰年也将在后续程序中使用,所以我们将在这里单独拿出来。图3是判断闰年的程序流程图。打开开头YYN闰年和平年Ny0=0NYy0=0y%4=0获得y年成组图3:判断闰年判断闰年后,检查日期。一月、三月、五月、七月、八月、十月和十二月有31天,四月、六月、九月和十一月有30天,闰年的二月有29天,正常年份的二月有28天。当日期超出法定日期范围时,软件将报告一个错误。程序框图如图4所示。打开开头y是闰年Nm=4|6|9|11,d30N输入日期y,m,dm=1|3|5|7|8|10|12,d31YYYYd29Nd28YYN合法,返

8、回真成组输出错误标志图4:检查日期(2)检查每分每秒的准确性检查小时、分钟和秒钟的准确性很简单,只需确保小时在023范围内,分钟在059范围内,秒钟在059范围内。当时间超出此间隔时,系统将报告错误。2.2.3更新日期和时间这个软件是一个日历软件,所以它应该有计时功能,并能够更新日期和时间。这种更新方法相对简单。那就是:每60秒增加一分钟,每60分钟增加一小时,每24小时增加一天。当最后一天是月末时,该日期成为下个月的第一天。这里,我们需要按月判断天数,然后决定是否按当前日期更改为下个月的第一天;当判断当月的天数时,我们可能需要判断那一年是否是闰年。当月数增加时,这取决于最后一个月是否是12月

9、。如果是12月份,我们会增加一年。这部分程序需要每秒执行一次。这里我使用时间组件,并将其间隔属性设置为1000。具体程序如下:void _ _ fast call TF form 1: timer 5 timer(对象*发件人)if(CSPinedit 4-Text= | | CSPinedit 5-Text= | | CSPinedit 6-Text= )定时器5-启用=假;返回;其他定时器5-使能=真;int j=CSPinedIt 3-值;if(csPinedit 4-值=0csPinedit 5-值=0csPinedit 6-值=0)j;int y=cspinedit 1-值;int m=cspinedit 2-值;开关(m)案例1:案例3:案例5:案例7:案例8:案例10:if(j=32)cspinedit 3-值=1;cspinedit 2-值=m;其他cspinedit 3

温馨提示

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

评论

0/150

提交评论