(论文)日历 课程设计最新优秀毕业论文资料搜集呕血奉献_第1页
(论文)日历 课程设计最新优秀毕业论文资料搜集呕血奉献_第2页
(论文)日历 课程设计最新优秀毕业论文资料搜集呕血奉献_第3页
(论文)日历 课程设计最新优秀毕业论文资料搜集呕血奉献_第4页
(论文)日历 课程设计最新优秀毕业论文资料搜集呕血奉献_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

程序设计基础课程设计日历设计 学 院: 级别专业: 班 级: 姓 名: 指导老师: 学 号:程序设计任务书一、设计题目:日历程序设计二、设计目的 1、使学生进一步理解和掌握课堂上所学VB程序设计中各种基本数据、数组、常用过程的定义与使用,各种程序设计逻辑结构设计,界面设计与常用控件的使用方法。 2、是学生掌握复杂程序设计的基本内容和设计方法,培养学生规范化软件设计的能力。 3、使学生掌握使用各种计算机资料和有关参考资料,提高学生程序实际的自我学习能力。三、程序设计的任务及要求 1、基本要求: 1)实现日历的基本功能(参照windows操作系统自带的日历功能)。 2)友好性:界面要友好,输入有提示,尽量展示人性化。 3)可读性:原程序代码清晰、有层次。 4)健壮性:对输入的数据有纠错处理。 2、创新要求: 实现24节气,重要节日的着重显示和12小时制24小时制之间的切换四、设计内容 包括初始界面和时钟部分。五、课程设计工作量 在这个程序中我主要负责参与时钟的编写,寻找合适的代码及界面的运行图的一些修改工作。六、课程设计工作计划2010年6月21日,开始选题。2010年6月22日,确定题目,分配小组成员各自的工作,开始题目制作。2010年6月23日25日,制作题目,并完成答辩。目 录一概述.4二总体设计方案.5三详细设计.5四程序的调试与运行结果.11五课程设计总结.12. 一、 概述1、课程设计的目的1、使学生进一步理解和掌握课堂上所学VB程序设计中各种基本数据、数组、常用过程的定义与使用,各种程序设计逻辑结构设计,界面设计与常用控件的使用方法。 2、是学生掌握复杂程序设计的基本内容和设计方法,培养学生规范化软件设计的能力。 3、使学生掌握使用各种计算机资料和有关参考资料,提高学生程序实际的自我学习能力。2、课程设计的要求要求我们熟悉对VB语言知识的运用,养成良好的编程习惯,能够熟练的应用循环,团结小组成员加强之间的团结合作精神。在遇到困难的时候能够坚持不懈,有恒心有毅力的继续完成任务。在编写的过程中善于总结和概括,巧妙利用身边的可利用资源(例如书本、互联网、老师同学等)解决难题。学会运用VB语言作图部分知识。能够在原有的设计理念上有所创新,使得界面更美观,运行效果更好。3、课程设计的主要设计思想 日历程序设计主要由日历部分和指针时钟两部分组成。最重要的地方就在于指针时钟的构思和制作。1)日历部分:从VB程序中可以自动生成日历格式,点击工具栏,在其部件中选取出合适可行的日历格式,再经过简单的位置排版即可。2)指针时钟部分:先确定时钟表盘的中心,然后通过label控件数组画出十二指数,再画出刻度,最后安装指针,其中这都需要运用到三角函数原理来控制坐标位置。注意:日历程序设计要求日历部分能够自由变动年份和月份,同时日期列表处跟随作相应的变动,另外日历设计中要达到的另一目的就是,当点击日期所在处时,界面图上会弹出方框,要求填入你所想要显示的时间,按确定按钮,指针可自动显示其输入的时间。二、总体方案设计日历程序设计过程中应该考虑到的是整体界面的实用性和美观性,小组经过商榷一致决定采取简约的设计风格,即设计界面由日历部分、label、Timer和Frame组成。对于该日历程序的具体功能作用的演示可概括为:运行程序时,Label和Timer隐藏起来,Label1显示日期系统日期,Label3则显示系统时间。点击Label1的日期时弹出方框,要求填入你所想要显示的时间,并按确定,指针可自动显示其输入的时间。在这个程序中我主要负责参与时钟的编写,寻找合适的代码及界面的运行图的一些修改工作。 三、详细设计以下是我在参与时钟的编写过程中,通过上网寻找一些可以借鉴的代码并加以改进后最终完成的编写过程。相信通过这些语言可以对我们编写的日历程序有更直观深刻的了解。(一)界面设计 界面设计共用到四种控件:Label 、Timer 、Frame 、Calendar 1、创建一个窗体 进入VB6.0后生成一个Form窗体,命名为:日历。 2、确定日历和时钟的摆放位置 根据Windows中的日历,将日历部分放在左侧,时钟放在右侧。 3、添加控件Label 、Timer 、Frame 、Calendar(1)在窗体左侧添加一个Frame,并更名为 日期(D)(2)在Frame上添加Calendar控件,调整位置(3)添加Label1、Label2的控件数组、Label3和一个时钟控件Timer1 4、调整Frame与Calendar的位置,确保Calendar全部显现,未被Frame框遮挡。 5、将Label1移动到日历的下方,并将Label3移动到Label1平行右侧的一定位置上。 6、进行检查,检查Label2控件数组的个数是否是十二个,名称为Label2(0)-Label2(11)。7、Timer和Label2控件数组的位置不做确定,系统运行时不会显现出来。 8、初始界面设计完成,如下图: (二)时钟设计主要分五步骤:A:确定中点坐标 B:标出12个数字刻度 C:画出60个刻度 D:标出并运行指针 E:弹出方框设计总的代码为:Dim h As Integer, m As Integer, s As Integer, tConst pi As Double = 3.14159265358979 /*全局定义的量Pi和 h m sPrivate Sub Form_Load() Timer1.Interval = 1000 /*Timer每隔一秒触发一次 Me.ScaleLeft = -7000 /*中点的横坐标 Me.ScaleTop = -3000 /*中点的纵坐标 For i = 0 To 11 Label2(i).AutoSize = True Label2(i).Caption = i + 1 /*Label2的名称定义为i+1 (i为变值) Label2(i).Left = 1300 * Cos(i * 30 - 60) * pi / 180) 80 /*12个Label的横坐标,运用了三角函数的Cos函数 Label2(i).Top = 1300 * Sin(i * 30 - 60) * pi / 180) 100 /*12个Label的纵坐标,运用了三角函数的Sin函数NextEnd Sub /*以上实现了中点坐标和标出12个数字刻度。Private Sub Timer1_Timer()RefreshFor i = 1 To 60PSet (1500 * Cos(i * 6 * pi / 180), 1500 * Sin(i * 6 * pi / 180), vbBlack /*利用Pset函数来完成画出60个刻度,并定颜色为黑色NextLabel1.Caption = 日期: & Space(3) & Date /*定义Label1的名称,并定其内容为系统日期Label3.Caption = 时间: & Space(1) & Time /*定义Label2的名称,并定其内容为系统时间 h = Format(Now, h)m = Format(Now, n)s = Format(Now, s)Line (0, 0)-(700 * Cos(h * pi / 6 - pi / 2), 700 * Sin(h * pi / 6 - pi / 2), vbRed /*画出时针,并定其颜色为红色Line (0, 0)-(800 * Cos(m * pi / 30 - pi / 2), 800 * Sin(m * pi / 30 - pi / 2), vbBlue /*画出分针,并定其颜色为蓝色Line (0, 0)-(1000 * Cos(s * pi / 30 - pi / 2), 1000 * Sin(s * pi / 30 - pi / 2), vbGreen /*画出秒针,并定其颜色为绿色End Sub /*以上完成了画出60个刻度和标出并运行指针Private Sub Label1_Click()t = InputBox(请输入时间) /*弹出的方框上显示“请输入时间”If IsDate(t) = True ThenLabel1.Caption = t /*将Label1的标题改为“t”Timer1.Enabled = False /*Timer1的Enabled属性改为 Flase RefreshFor i = 1 To 60PSet (1400 * Cos(i * 6 * pi / 180), 1400 * Sin(i * 6 * pi / 180), vbBlack /*重画60个刻度,并定其颜色为黑色Nexth = Format(t, h)m = Format(t, n)s = Format(t, s)Line (0, 0)-(700 * Cos(h * pi / 6 - pi / 2), 700 * Sin(h * pi / 6 - pi / 2), vbRed /*画出时针,并定其颜色为红色 Line (0, 0)-(800 * Cos(m * pi / 30 - pi / 2), 800 * Sin(m * pi / 30 - pi / 2), vbBlue /*画出分针,并定其颜色为蓝色Line (0, 0)-(1000 * Cos(s * pi / 30 - pi / 2), 1000 * Sin(s * pi / 30 - pi / 2),vbGreen /*画出秒针,并定其颜色为绿色End IfEnd Sub /*以上完成了弹出方框选择自己所想选择的时间四、调试的结果与运行结果说明 代码编写好之后尝试运行却屡试屡败,于是不得不仔细检查代码寻找问题出错的关键,这是一项繁琐而细致的工作,经过大家齐心协力终于发现有好几处拼写错误,将其改正后,发现可以运行。但是指针每走一步就加长一些,经过多方的询问始终不能得到有效的改善最后只好请教老师,老师给了我们极大的帮助,告诉我们三角函数求坐标的公式有问题。经过多次改正,最后终于将代码完成。程序编程成功后,开始运行,终于达到了我们想要的效果:窗体左侧日历框显示系统日期,日历框下方显示数字日期,并且与系统日期一致。窗体右侧显示指针式时钟,时针为红色,分针为蓝色,秒针为绿色,并且显示系统时间。在时钟下方显示数字时间。单击数字日期时,弹出方框,方框上显示“请输入时间”,输入符合格式的时间后,单击确定,时钟上显示的即为输入的时间。运行界面如下:五、课程设计总结经过这5天来大家坚持不懈的努力,最终比较满意的完成了本次程序设计的任务,编写出一个具有日历基本功能的程序。这

温馨提示

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

评论

0/150

提交评论