您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > Java程序设计“打字程序”
徐州工程学院综合训练报告课程名称面向对象程序设计综合设计专业计算机科学与技术(单)班级09计单学生姓名黄晨学号2009*****44设计题目打字速度测试程序指导教师******设计起止时间:2011年12月21日至2012年1月6日成绩-1-目录1开发背景和意义.......................................................................................................21.1开发背景.................................................................................................................21.2设计目的及意义.....................................................................................................22需求分析...................................................................................................................22.1系统所需完成的任务.............................................................................................22.2系统功能需求分析.................................................................................................33总体设计...................................................................................................................33.1系统设计目标.........................................................................................................33.2系统体系结构.........................................................................................................33.3程序结构设计.........................................................................................................44详细设计...................................................................................................................54.1起始界面设计.........................................................................................................54.2添加文件界面设计.................................................................................................74.3设置测试时间设计.................................................................................................84.4速度和剩余时间设计.............................................................................................94.5显示测试成绩设计...............................................................................................105系统测试.................................................................................................................115.1系统测试的方法...................................................................................................115.2程序测试...............................................................................................................116设计总结.................................................................................................................11参考文献......................................................................................................................12附录..............................................................................................................................12-2-1开发背景和意义1.1开发背景二十世纪的后半期,尤其是90年代后,计算机取得了飞速的发展。近来,随着网络的发展,计算机已经成为人们生活中不可缺少的一部分。提高人们对计算机的操作能力显得尤为重要。而打字速度是衡量一个人操作熟练的一个重要方面。因此开发一种高效的打字程序显得迫在眉睫。目前大多数打字程序都是只能在Windows下运行,跨平台运行能力不是很强。为了适应当下的需求,格外需要一款能够新的打字程序。本程序使用的开发工具是java1.6,它目前是比较流行的java语言开发工具,在执行效率方面表现良好,在跨平台方面更是强项。因此用户可以放心使用。1.2设计目的及意义随着科学技术的不断提高,计算机科学目渐成熟,计算机怩深入到工作和生活的各个角落,文字录入是学习计算机非常重要的一部分。在手写录入技术和语音识别技术还不完善的同时大部分人还在使用键盘作为文字录入的工具。所以我编了这样一个小程序,同时也是我的面向对象程序设计的课程设计。希望能对电脑初学都和想提高打字速度的朋友们有所帮助。本系统构建学生打字练习系统,基于所开发的打字程序界面友好,图形复杂。打字练习程序中应用到eclipse最新版本,java1.6以上版本的jdk。对于打字测试进入整体的部署。完成打字练习程序开发,培养程序设计和开发能力。2需求分析2.1系统所需完成的任务打字速度测试程序。要求设计一款打字速度测试程序,要求界面良好,实现从磁盘上寻找打开一个文件、设置打字时间、时实显示打字速度和剩余时间等功能,应用到GUI,多线程,文件的输入输出等知识。需要从磁盘打开要录入文件的样本,录入前可以设定录入练习时间,录入时需要实时显示录入速度和剩余时间,录入结束后,显示录入速度和错误率。录入结束方式可以通过点击“结束测试”按钮结束测试,文章录入完成也自动结束录入,到达设置时间也自动结束录入。最后要求图形界面,界面良好美观。根据任务要求主要遇到的问题在于如何很好的监听按键菜单事件,监听部分键盘如(ctrl+o和enter);如何在打开文件对话框中过滤只显示txt和目录文件,读取文件后如何一部一部地显示并能正确统计录入字数和错误字数;如何在录入文章时,同时监控系统时-3-间,并能尽量减少cpu占用。2.2系统功能需要分析经过对现有一般打字程序的使用者的调查与分析,得出若要编写此打字程序,本程序必需主要实现的管理功能如下:1.添加文件。从磁盘添加现有的文本文件显示在程序界面上方。2.设置测试时间。在打字开始前,可以设置测试时间,方便快捷地结束测试。3.显示测试结果。结果主要包括:打字速度和错误率。4.在录入过程中,显示当前速度和剩余时间。为了时实提醒用户打字速度和打字时间必需可以时实提示打字速度和剩余时间(剩余时间是设置的测试时间减掉已使用的时间)。5.使用菜单栏。要求菜单栏可以从“文件——打开”添加文件,可以从“文件——退出”退出程序,可以从“帮助——关于”了解程序信息。6.多情况结束测试。1、当测试结束时,结束测试。2、当点击“结束测试”按钮结束测试。3、当文章录入完成结束测试。3总体设计3.1系统设计目标从磁盘添加现有的文本文件显示在程序界面上方。在打字开始前,可以设置测试时间,方便快捷地结束测试。显示测试结果。结果主要包括:打字速度和错误率。在录入过程中,显示当前速度和剩余时间。为了时实提醒用户打字速度和打字时间必需可以时实提示打字速度和剩余时间(剩余时间是设置的测试时间减掉已使用的时间)。使用菜单栏。要求菜单栏可以从“文件——打开”添加文件,可以从“文件——退出”退出程序,可以从“帮助——关于”了解程序信息。多情况结束测试。1、当测试结束时,结束测试。2、当点击“结束测试”按钮结束测试。3、当文章录入完成结束测试。文字录入是学习计算机非常重要的一部分。在手写录入技术和语音识别技术还不完善的同时大部分人还在使用键盘作为文字录入的工具。所以我编了这样一个小程序,同时也是我的面向对象程序设计的课程设计。3.2系统体系结构本程序主要分为以下几个子模块:添加文件、打开、退出、关于、开始测试、结束测试等。系统结构设计图如图3-1所示。打字速度测试程序-4-图3-1系统功能模块图3.3程序结构设计根据分析最后决定本程序整体是用一个Typer主类和用一个TyperProgram类完成图形界面和监听响应事件,在内部用Timer类实现对系统时间监控显示和完成录入后的成绩计算。其中监听键盘和文本输入用匿名内部类来实现,TyperProgram和Timer用多线程来实现并发运行。当程序运行时TyperProgram的对象先运行,当点击开始按钮时Timer对象开始运行。主要应用到的API类有:java.io.*;java.awt.*;java.awt.event.*;javax.swing.*;javax.swing.event.*;javax.swing.filechooser.FileFilter。程序的主类是Typer。需要编写的主要函数有:setWindow()用来设计用户界面,整体的JFrame用BorderLayout进行布局分成北中南三个块。其中北边是一个用GridLayout布局的JPanel分成0行2列,两列中分别是一个JTextField;中间是一个GridLayout布局的JPanel分成2行1列;南边是一个FlowLayout布局的JPanel,里面放两个居中的按钮。setListener()用来设置多种监听,如事件监听,键盘监听,文本监听等。其中事件监听由于实现了接口ActyionListener,直接添加本类,再于函数
本文标题:Java程序设计“打字程序”
链接地址:https://www.777doc.com/doc-5239998 .html