当前位置:文档之家› 背单词程序课程设计报告

背单词程序课程设计报告

(北京)计算机语言课程设计——背单词院系:地球物理与信息工程学院专业:自动化09小组成员:常润秀、覃丹丹、周衍彤陈建龙、黄冬完成日期: 2011年7月14 日小组设计成绩:评阅:1. 程序运行情况:2. 答辩情况:3. 平时表现:4. 设计报告:一、设计目的:综合运用面向对象开发工具,设计Windows风格的软件。

通过此次程序设计题目,使学生熟练掌握Windows应用程序的开发过程,为以后专业课的学习奠定基础。

二、所选编程语言:Visual Basic 6.0三、系统总体设计思路:背单词软件是英语学习类软件的分支,是专门针对用户背诵英语单词,掌握词汇量而制作的辅助学习软件。

由于媒介为个人电脑,所以背单词软件有着其它背单词工具无法达到的智能化与互动性,但相对应的,过于依赖电脑和较差的便携性成为其缺陷。

所以作为背单词的软件的设计思路应该简单为原则。

用户操作必须简单、方便为原则。

(1)本题目共提供了“大学英语四级词汇”和“大学英语六级词汇”两个词库文件(分别是grade4.txt和grade6.txt),通过“词库设置”中的“词库”组合框可以选择想要的词库。

默认的词库是“大学英语四级词汇”。

(2)为了便于用户使用,程序允许选择想要记忆的单词范围。

默认的单词范围是“A至Z”,即全部单词。

如果选择的范围是“A至C”,那么程序只显示以A、B和C字母开头的单词。

程序应保证“起始字母”在“终止字母”之前,即不会出现类似于“C至A”的情况。

(3)据需要选择“随机”或“循环”复选框。

如果不选择“随机”,则显示单词时是以单词在词库中的顺序(即字母的顺序)显示的,否则以随机顺序显示。

如果不选择“循环”复选框,单词显示一遍之后自动停止回到起始状态。

如果选择了“循环”复选框,显示一遍之后会自动从头开始显示。

在随机方式之下,循环是没有意义的,所以当“随机”复选框选定时,“循环”复选框应变为无效且呈现未选定状态。

(4)毕后,单击“开始”按钮,窗口最上方显示区域从右向左以字幕方式动态显示所选的单词,包括词性和词义。

在显示过程中可以改变字体大小、滚动速度和背景显示颜色。

单击“暂停”按钮可以暂停滚动,这时“暂停”按钮变为“继续”,单击会继续滚动。

单击“退出”按钮退出主界面。

设计任务分工安排:由于小组由五名成员构成,可将界面模块分为五个部分:1.滚动字幕以及部分相关控制控件。

设计人员:陈建龙。

2.字体大小,滚动速度,背景颜色控制。

设计人员:常润秀。

3.词库选择。

设计人员:覃丹丹,黄冬。

4.显示方式(随机,循环)设计人员:覃丹丹,黄冬。

5.主界面其他相关控件,以及其他弹出界面和进入界面。

设计人员:周衍彤。

设计进度安排:设计时间:2011.7.7~2011.7.8, 2011.7.11~2011.7.137、8号找到各部分设计思路,进行初步设计11号各控件、模块设计完成12号各控件、模块组合13号设计报告撰写四、系统各功能模块设计包括采用的关键控件、关键技术、主要界面通过运行本程序,可以轻松背单词。

主要功能包括选择词库范围(大学英语四级词汇、大学英语六级词汇)、选择首字母范围、选择播放方式(随机、循环)、改变字体大小、改变滚动速度、改变滚动条背景颜色等。

(一)主要界面A、首界面:可以选择“点击进入”按钮或者“退出”按钮,继续程序。

B、选择点击进入之后,进入主程序界面。

C、单击使用说明按钮,弹出对话框。

(二)关键控件A、按钮控件:本程序中运用大量按钮控件,分别控制首界面中“点击进入”、“退出”,主程序界面中“开始”、“暂停”、“退出”、“使用说明”以及滚动条两侧“左移”、“右移”功能。

在首界面中,单击“点击进入”按钮后,首界面消失,进入主程序界面。

单击“退出”按钮,弹出”是否退出”的对话框。

在主程序界面中,单击“开始”按钮之前,“暂停”按钮为灰显状态。

单击“开始”按钮,滚动条开始滚动,此时单击“暂停”按钮,滚动条停止滚动,“暂停”按钮变更为“继续”按钮,单击”继续“按钮,滚动条继续滚动。

单击“退出”按钮,回归首界面。

单击“使用说明”,弹出“使用说明”窗体。

点击“左移”、“右移”按钮,滚动条相应左右移动。

B、标签控件:本程序使用大量标签控件,以便标注各个控件的功能。

C、组合框控件本程序中共有三个组合框,分别控制词库范围(大学英语四级词汇、大学英语六级词汇)、首字母范围的选择。

D、滚动条控件本程序中共有四个滚动条控件,分别控制滚动速度、滚动条背景颜色的更改。

E、复选框控件通过对复选框按钮的选择,选择播放方式(随机、循环)。

点击“随机”框,“循环”框为灰显状态,滚动单词内容随机播放。

点击“循环”框,选择首字母范围之后,在该字母范围内循环播放。

F、单选按钮控件通过对单选按钮的选择,选择滚动字体的大小。

单击“大字体”框时,字体变为20号字。

单击“小字体”框时,字体为14号字。

G、图像框控件首界面中图片的放置。

H、文本框控件构成滚动字体(三)关键技术A、时钟与滚动将时钟的Interval设定为显示速度滚动条的值的线性函数(Timer1.Interval =HScroll1.Value * 20),时钟的速度便由滚动条的值控制,成为为可调的。

为了循环的执行,这里定义一个随机变量k。

随着时钟计时,当text1中显示内容从左起的第一个字符的ASCII 码大于零,则其字幕显示为前一个词从第四位开始取长度为这个词长度减三的部分和后一个词前三位部分,k=k+3。

而当text1中显示内容从左起的第一个字符的ASCII码小于零,则其字幕显示为前一个词从第二位开始取长度为这个词长度减一的部分和后一个词第一位部分,k=k+1。

如此便形成了字幕可以以不同速度滚动的效果。

B、词库选择与调用文档当词库选择的组合框1选择大学英语四级词汇时,便open大学英语四级词汇的文本文档命名为#1以input形式使用;当词库选择的组合框1选择大学英语六级词汇时,便open 大学英语六级词汇的文本文档命名为#1以input形式使用。

注意:文档中的单词按顺序排列,一行一个,首字前有四个空格,每一次首字母变化前加入书写“/”的一行,以便后面设定范围之用。

通过while循环,文档内容以字符串nextline按行输入遇到“/”则显示空白。

C、范围设定范围设定有两个方面。

1)若下限比上限小,下限设定为空白。

如此便满足了下限不比上限小的要求。

2)组合框2和 3 是用来设定范围的,他们的每个选项都有一个编号ListIndex。

设定上限时,我们再一次用到ASCII码。

当用来存放nextline的数组s( )的元素s(m)的第五位(即单词首字母)的ASCII码比组合框2 的ListIndex+96的值大的时候,用来存放有效字符串的数组t(r)的下标r开始计数。

令s(m)=t(r),则上限设定成功。

设定下限时,我们用变量j 来对“ /”计数。

当j比组合框3的ListIndex大时,跳出while 循环。

如此,下限便得到了控制。

D、对随机显示的控制未选择复选框1时,用for循环按Text1.Text = Text1.Text & t(n)使字幕顺序显示;选择时,用Randomize产生1到r-1之间的随机数,将r的值依次存入到数组a(n)中,用for循环按 Text1.Text = Text1.Text & t(a(n))使字幕随机显示。

E、循环控制由于时钟不会停,系统默认的是循环,所以我们只需对不选复选框2的情况进行控制。

我们在A中提到的k值,在这里开始显示作用。

当k的值大于text1显示内容的总长度后,输出空白,即不循环。

F、字幕的左右移动当点击按钮5时,我们用Text1.Text = Mid(Text1.Text, 11, Len(Text1.Text) - 10) & Left(Text1.Text, 10)来使字幕左移;当点击按钮6时,我们用Text1.Text = Mid(Text1.Text, Len(Text1.Text) - 9, 10) & Left(Text1.Text, Len(Text1.Text) - 10)来使字幕右移。

五、软件运行结果(1)、运行程序,可显示一个背单词的首界面。

“点击进入”即可进入背单词的主界面(2)、提供了“大学英语四级词汇”和“大学英语六级词汇”两个词库文件,通过“词库”组合框可以选择想要的题库,默认的词库是“大学英语四级词汇”。

(3)、为了便于用户使用,可以选择想要记忆的单词范围,默认的单词范围是“A~Z”。

.(4)、根据需要选择“随机”或“循环”复选框。

如果二者都不选,则默认显示单词表显示到最后一个单词即停止;如果选择“随机”复选框,“循环”复选框变为无效且不可选定状态。

如果选择了“循环”复选框,显示一遍之后会自动从头开始显示。

(5)、通过“其他设置”中的“字体大小”单选框可以选择滚动单词时的字体大小。

(6)、通过操作滚动条可以设置字幕滚动速度。

(7)、通过颜色设置里面对R、G、B的调节可以实现对显示单词栏背景颜色的调整。

(8)、设置完毕后,单击“开始”按钮,窗口最上方显示区域从右向左以字幕方式动态显示所选的单词,包括词性和词义,如图14.4所示。

在显示过程中可以改变字体大小、滚动速度和显示颜色。

单击“暂停”按钮可以暂停滚动,这时“暂停”按钮变为“继续”,单击会继续滚动。

(9)、单击该主界面的“退出”,立即回到我们的进入界面,继续单击“退出”,即可完全退出背单词程序。

(10)、若对本运行软件操作有疑问,进入主界面后可以单击左下角的使用说明。

六、设计总结通过这次课程设计,VB编程水平有了很大的提高。

从最开始编写这个程序到程序运行,经过对程序的反复调试与修改,深刻感受到编写一个程序是一个漫长而辛苦的过程,需要编程人员具备足够的耐心与细心。

与此同时也培养我们查阅知识并通过自学掌握知识的能力。

程序的入手阶段是困难的,刚刚接触一个新的程序会感到无从下手。

首先要做一些准备工作。

要了解这个程序是干什么的,它应具备怎样的功能。

当明确了这些问题以后,就要针对不同的功能逐一的思考实现该功能的方法。

对于每一个功能的实现需要用到那些知识,通过查阅相关知识,做到心中有数,再进行编程。

编程时要先制定一个大的框架,用几个模块,什么模块,那些事件过程,那些通用过程,当大致的轮廓出来后再进行深一步的编写,考虑语句的语法、逻辑,各个通用过程的调用,事件过程的实现。

这里会遇到真正难以解决的问题,要再次通过查阅多方资料并结合认真思考来寻找解题思路。

当然在编程的过程中最重要的一点就是善于总结,这样可以避免重蹈覆辙。

在程序编写结束后,更要进行总结,认真思考怎样编写一个过程是简便快捷的,在下次遇到同样问题时可以节省时间,提高效率。

相关主题