万年历设计3.docx
《万年历设计3.docx》由会员分享,可在线阅读,更多相关《万年历设计3.docx(13页珍藏版)》请在第一文库网上搜索。
1、陕西师范大学远程教育学院题目:java万年历设计学习中心,陕西省咸阳教苜科技培训学院学号:层次:一高一中起点专科姓名王遥俊一、设计内容2二、设计过程22.1 需求分析22.2 概要设计22.3 详细设计32.4 程序运行与发布5三、总结7四、参考文献7一、设计内容万年历是一个强大的日历系统,通过它可以实现对过去,现在以及将来日期的查找,通过在年份对话框中输入要查询的年份,再相应的在月份对应的下拉菜单选择要查询的月份,则可得到相应的日历。本实验是对图形用户界面,布局管理器的综合运用,理解JAVA的时间处理机制,编写独立运行的窗口。二、设计过程2.1 需求分析本程序的要求为:1.使用图形用户界面本
2、程序能够实现日期与星期的查询。3.随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。文本编辑器是个人计算机最司空见惯的应用程序了,在学习了Java语言之后,我决定使用JaVa语言编写一个简单的万年历,可以实现查询日期和显示时间的功能,满足日常基本的工作学习和娱乐需要。2.2 概要设计1 .总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且
3、该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。2 .输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。3 .算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得O换行,即可完整的输出该月的日历。4 .如果年份小于1582年则程序不予判断。2.3详细设计1 .流程图23 .初始化组件:importjava.app1et.App1et;importjava.awt.*;importjava.u
4、ti1.*;4 .初始化数据:pub1icc1assCa1endarApp1etextendsApp1etstaticfina1intTOP=70;顶端距离staticfina1intCE11WIDTH=50,CE11HEIGHT=30;单元格尺寸staticfina1intMARGIN=3;边界距离staticfina1intFEBRUARY=1;TextFie1dIfYear=newTextFie1d(,2004,5);/显示年份的文本域ChoicemonthChoice=newChoice();月份选择下拉框ButtonbtUpdate=newBUtton(“更新”);更新按钮Grego
5、rianCa1endarca1endar=newGregorianCa1endar();日历对象FontSma11Font=newFont(,TimesRoman,Font.P1A1N,15);显示小字体FontbigFont=newFont(TimesRoman,Font.BO1D,50);显示大字体Stringdays=星期日星期一”,”星期二星期三”,”星期四星期五一星期六”);Stringmonths=一月二“二月“,“三月“,“四月五月“,“六月“,“七月“,“八月”,“九月”,“十月:H月”,“十二月”;intdaysInMonthU=31,28,31,30,31,30,31,31
6、,30,31,30,31;每个月的天数intSearchMonth,searchYear;查询的年份及月份5 .绘制程序界面:pub1icvoidinit()SetBackground(Co1oEwhite);设置背景颜色SearchMonth=ca1endar.get(Ca1endar.MONTH);得至IJ系统年份SearchYear=ca1endar.get(Ca1endar.YEAR);得至IJ系统月份add(new1abe1(年:);增加组件到App1ettfYear.setText(String.va1ueOf(searchYear);设置文本域文字add(tfYear);add(
7、new1abe1(月monthChoice.setFont(sma11Font);设置月份选择下拉框的显示字体for(inti=0;i12;i+)monthChoice.add1tem(monthsi);增加下拉框选项)monthChoice.se1ect(SearchMonth);设置下拉框当前选择项add(monthChoice);add(btUpdate);intComPOnentCoUnt=this.getComponentCount();得至IJApp1et中的组件数for(inti=0;icomponentCount;i+)getComponeHi).SetFont(Sma11Fo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 万年历 设计
![提示](https://www.001doc.com/images/bang_tan.gif)