ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:371KB ,
资源ID:13161417      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/13161417.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java课程设计报告万年历詹永堂Word文件下载.doc)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java课程设计报告万年历詹永堂Word文件下载.doc

1、1.1需求分析31.2功能设计32.概要设计42.1程序设计思路42.2程序运行界面42.3流程图53.各模块的功能及程序说明53.1.初始化组件53.2.初始化数据63.3.绘制程序界面73.4计算各个月的天数83.5年份输入控制93.6获取点击表格详细日期103.7打印日期113.8国际时间系统调用显示113.9显示系统时间123.10农历计算模块124测试分析206课程设计体会20参考文献21前言1995年,Java语言的名字从Oak编程了Java。1997年J2SE1.1发布。1998年J2SE1.2发布,标志Java2的诞生。十多年来,Java编程语言及平台成功地运用在网络计算及移动

2、等各个领域。Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java的平台标准有Java ME,Java SE和Java EE。Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。本次课程设计开发平台使用Eclipse。参照JDK帮助。1需求分析1.1需求分析本程序的要求为:(1)能够显示实现1800-2100年的日期,包括公历、农历、星期、二十四节气。(2)能够按照月份格式显示,或按照星期格式显示

3、。(3)能够显示系统时间。(4) 能够设置闹钟。(5)能够查询若干国际大城市(分布在不同时区)的时间。1.2功能设计本程序要构建的万年历程序,其功能有以下几个方面:一、设计程序运行界面,具有显示各种功能的面板模块,并对各功能按钮就行时间监听;二、程序需要显示1800年到2100年的日历,包括公历、农历、时间所对应的星期。要求系统能够从界面上的操作获取公历日期,计算其所对应的星期和相应的农历并显示到界面上;三、程序要求显示系统时间,并能设置闹铃。要求可以自己设置一个时间点,在这一时间点做出相应的响应;四、查询显示若干国际城市不同时区的时间,这里只需要调用Java的系统里就可以解决。五、对时间的更

4、新,日历显示要求关联系统时间,能在进入程序时显示系统时间对应的日历,并能返回当天日历;六、程序界面的美观设计和人性化结构,要求具有良好的人机交互,容易理解界面内容,易操作;七、就现在的水平来说,功能1、2、3、5是可以实现,功能4 有待研究,可能遇到的问题是按钮对时间的监听处理可能难度较大,还有就是在公历转农历中可能比较难获取相应的公历变化日期 。2.概要设计2.1程序设计思路1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,

5、再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。2. 输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。3. 算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。4.获取系统时间,计算当天农历日期并显示2.2程序运行界面2.3流程图程序初始化获取当前系统时间年份等数据提交年月变更数据

6、是否输入年份或选择月份开始计算,绘制屏幕结束计算农历3.各模块的功能及程序说明3.1.初始化组件 import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.table.DefaultTableModel;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;

7、import java.util.Locale;import java.util.TimeZone;3.2.初始化数据public class wannianli extends JFrame implements ActionListener, MouseListener private Calendar cld = Calendar.getInstance();/获取一个Calendar类的实例对象private String astr = 星期一, 星期二星期三星期四星期五星期六星期日 ;private DefaultTableModel dtm = new DefaultTableMo

8、del(null, astr);private JTable table = new JTable(dtm);private JScrollPane sp = new JScrollPane(table);private JButton bLastYear = new JButton(上一年);private JButton bNextYear = new JButton(下一年private JButton bLastMonth = new JButton(上月private JButton bNextMonth = new JButton(下月private JPanel p1 = new

9、 JPanel(); / 设立八个中间容器,装入布局控制日期的按钮模块private JPanel p2 = new JPanel(new GridLayout(3,2);/网格布局private JPanel p3 = new JPanel(new BorderLayout();/边界布局private JPanel p4 = new JPanel(new GridLayout(2,1);private JPanel p5 = new JPanel(new BorderLayout(); private JPanel p6 = new JPanel(new GridLayout(2,2);

10、private JPanel p7 = new JPanel(new GridLayout(2,1); private JPanel p8 = new JPanel(new BorderLayout(); private JComboBox timeBox = new JComboBox(TimeZone.getAvailableIDs();/对所有支持时区进行迭代,获取所有的id;private JTextField jtfYear = new JTextField(5);/ jtfYeaar年份显示输入框private JTextField jtfMonth = new JTextFiel

11、d(2);/ jtfMouth月份显示输入框private JTextField timeField=new JTextField();/各城市时间显示框private static JTextArea jta = new JTextArea(10,5);/农历显示区private JScrollPane jsp = new JScrollPane(jta);private JLabel l = new JLabel(花江小精灵:亲!你可以直接输入年月查询.private JLabel lt = new JLabel();private JLabel ld = new JLabel();pri

12、vate JLabel lu = new JLabel(农历和节气private JLabel null1=new JLabel();private int lastTime;/private String localTime = null;private String s = null;private SimpleDateFormat dateFormat=new SimpleDateFormat(yyyy年MM月dd日 hh时mm分ss秒3.3.绘制程序界面public wannianli() super(花江日历 过去仅留追忆,未来刚生憧憬,唯有坚守本心,把握今天 ZYT 詹永堂 / 框

13、架命名this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/ 窗口关闭函数this.getContentPane().setLayout(new BorderLayout(9, 10);jta.setLineWrap(true);/ 长度大于分配长度时候则换行jta.setFont(new Font(黑体, Font.BOLD, 16);table.setBackground(Color.white);table.setGridColor(Color.pink);/ 星期之间的网格线是灰色的table.setColumnSelectionAllowed(true);/ 将table中的列设置为可选择table.setSelectionBackground(Color.pink);/ 当选定时背景颜色为黑色table.setSelectionForeground(Color.GREEN);table.setBackground(new Color(184,207, 229);/ 日期显示表格为浅蓝色table.setFont(new Font(, Font.

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1