当前位置:首页 > Java大作业报告
课程: Java程序设计与应用开发
题目: 登录系统与钟表实现
班 级: XXXXXXXXXX
学 号: XXXXXXXX
姓 名: XXXX
日 期: XXXXX
1
一、大作业目的
用面向对象语言JAVA完成登录系统和钟表的分析、设计和实施。通过课程设计
掌握面向对象编程技术、GUI编程、常用类库的使用和应用系统的开发过程。
二、大作业题目描述和要求
1.题目
设计简单的登录系统和钟表界面,掌握Java编程中的多媒体应用。
2.要求
(1) 登录系统是java编程中比较基础的,设计一个登录对话框,通过输入正确的用户名和密码来进入系统,系统是一个带有菜单栏的记事本程序,通过点击菜单栏上的按钮来实现相应的功能。
(2) 通过设计一个钟表程序进一步掌握java在多媒体方面的应用。
3. 开发环境
Eclipce + JDK1.4.2
三、系统分析
1.对于登录系统,首先应该对登录界面进行设计,该对话框中包括两个标签,一个文本输入框,一个密码输入框和两个按钮,这些GUI组件被添加到一个使用了网络袋布局的面板panel中,面板panel又被添加到Text_Login的内容窗格。
设计该系统的初步思路就是首先需要定义图像生成器的界面窗口,其次就是往每个按钮上添加触发事件监听器(如ActionListener、MouseListener、MouseMotionListener),然而在实际操作的过程中,新的问题不断出现,不过最后依依解决了。
对于记事本程序中的菜单栏的实现,菜单也是一种常用的GUI组件,菜单是一种层次结构,最顶层是菜单栏,在菜单栏中可以添加若干个菜单,每个菜单又可以添加若刚菜单选项,子菜单。当单击一个菜单选项时,会生成一个动作事件,为菜单选项添加事件侦听器就可以侦听起动作事件。
2.对于Java的多媒体应用之钟表实现,程序在窗口上显示一个表盘,时刻度和分刻度为3D样式的,分别为黑灰色和灰色时针分针秒针随着时间在走动,间隔1s。时针和分针的样式设计为略显锥形,秒针为简单的直线形。在表盘下方设置了数字式时钟,显示颜色为蓝色,刷新时间为1s。
四、系统设计
1. 实现过程
1.登录界面中首先插入包,其次对类Text_Login进行定义,对登录界面中的按钮组件建立动作事件,如图:
2
当输入正确的用户名和密码以后跳出“登录成功”的对话框如图所示
当不输或者错误输入则显示
然后为跳转到记事本程序而定义了一个go函数,使两个程序能完成衔接。
对于记事本程序,首先同样是插入包,其中新建文件夹和打开文件夹需要监听程序,编写监听程序来监听用户的动作来给出相应的反应。对于保存和另存为同样需要监听程序。在基本的编辑菜单下有5个命令,分别是剪切,复制,粘贴,全选和查找。都实现其相应的功能。 在格式菜单中添加了设置字体颜色的选项,通过如下程序可以实现 color.addActionListener(new ActionListener(){ }
最后是状态栏和帮助菜单,在帮助菜单中关于版权的跳出对话框如图
public void actionPerformed(ActionEvent e){
Color c=JColorChooser.showDialog(f, \请选择颜色\, Color.CYAN); if(c!=null)
{
text.setForeground(c); } else
text.setForeground(text.getForeground()); }
最后的记事本程序完成
3
后界面显示如图
2.钟表界面
程序由引入声明和主类构成,插入awt和applet系统包中预定义类,由于要把动画循环设计在新开线程中因而在类头声明中实现Runnable接口并实现该类唯一的抽象方法run,因为设计永久循环使用repaint调用paint方法并延时。为控制新线程的运行,在域声明部分声明线程类的对象,添加start方法,创建和启动线程,添加stop方法,关闭线程。程序将形成表盘的时刻表和分刻度代码单独放到一个用户自定义的方法drawscale中,在paint方法中首先调用drawscale方法绘制表盘,然后通过获取当前日期得到数字式时钟的字符串,当前的时,分,秒述职,并通过计算得到对应当前时间的时,分,秒针尖的位置左边,最后在窗体上显示数字式时钟,并绘制表针。最后的效果图如图
4
共分享92篇相关文档