为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

C#课程设计游戏弹琴游戏

2018-07-07 12页 doc 31KB 33阅读

用户头像

is_842972

暂无简介

举报
C#课程设计游戏弹琴游戏C#课程设计游戏弹琴游戏 毕业设计,论文,报告 题 目基于C#的小游戏——键盘钢琴的设计和开发 系 别 软件与服务外包学院 专 业 软件技术,游戏设计, 班 级 **** 学生姓名 ******* 学 号 ********* 指导教师 ****** 2012 年 4 月 目 录 一、论文设计背景和意义 ......................... 错误~未定义书签。1 1.1设计的背景 .............................. 错误~未定义书签。1 1.2设计的意义 .........
C#课程设计游戏弹琴游戏
C#课程设计游戏弹琴游戏 毕业设计,论文, 题 目基于C#的小游戏——键盘钢琴的设计和开发 系 别 软件与服务外包学院 专 业 软件技术,游戏设计, 班 级 **** 学生姓名 ******* 学 号 ********* 指导教师 ****** 2012 年 4 月 目 录 一、论文设计背景和意义 ......................... 错误~未定义书签。1 1.1设计的背景 .............................. 错误~未定义书签。1 1.2设计的意义 .............................. 错误~未定义书签。1 二、需求分析调查 ............................... 错误~未定义书签。2 2.1 市场调查 ............................... 错误~未定义书签。2 2.2 应用情况 ............................... 错误~未定义书签。2 三、软件设计 ................................... 错误~未定义书签。2 3.1 软件介绍 ............................... 错误~未定义书签。1 3.2 应用环境 ............................... 错误~未定义书签。2 3.3 设计原理 ............................... 错误~未定义书签。2 3.4 程序功能模块 ........................... 错误~未定义书签。3 四、程序详细设计 ............................... 错误~未定义书签。4 4.1 类的使用 ............................... 错误~未定义书签。4 4.2 系统程序事件 ........................... 错误~未定义书签。3 五、设计方法及措施 ............................ 错误~未定义书签。20 5.1 具体步骤 .............................. 错误~未定义书签。20 5.2 软件测试 .............................. 错误~未定义书签。20 六、 ...................................... 错误~未定义书签。20 参考文献 ...................................... 错误~未定义书签。21 代码附录 ...................................... 错误~未定义书签。21 Abstract C# is a software development tool, is also a kind of programming language.It is a very high stability and safety of development tools, and the object oriented programming language. In Baidu encyclopedia, we can look to the C# language has a long history, since the official launch in 2000, has beenMicrosoft and many software companies have important code writing instruments. C# as the bright younger generation, which combines the C,C++ two languages and efficient operation and the characteristics of the VB series of simple and easy operation characteristics, because of its powerfuloperation ability has become the preferred programming language learninglovers. Principle of piano keyboard software is based on the computer keyboard to replace the keys of the piano playing some beautiful music. The originalidea of software design is simple and convenient, easy to operate, so itsvolume is small, the occupied space resources are few, easy process. This software can only be used 26 English letters in main keyboard area, namely A, B, Y, Z this three line English letters. Perhaps some people will say thatit is like a typing game, let not the music foundation person quickly, butsome basic music people feel discomfort. In fact, every person in the use ofthis software, there are different views and evaluation. Then, the positioning of the software is a good way to achieve a kind of entertainment through the simple operation of fingering, let people do not because of the limit of time and space, can be good voice pop-up rhythmic.It removes the complexity of professional music software operation, simpleoperation, can make people in this fast-paced life release pressure.Because of its simple and easy operation, so the service of the crowd is quite extensive, can accept the people using it will be great. 摘要:C#既是一种软件开发工具,也是一种编程语言。它是一种稳定性和安全性都很高 的开发工具,并且也是面向对象的一门编程语言。在百度百科里面,我们可以查到C# 这门语言已经有很长的发展历史了,自从2000年正式发布以来,一直都是微软以及许 多软件公司重要的代码书写工具。C#作为后起之秀,它结合了C、C++两门语言高效运行 的特点以及VB一系列的简单易操作特性,正因为其强大的操作能力也使之成为程序学 习爱好者的首选语言。 键盘钢琴软件的原理是以电脑键盘来替代钢琴键演奏一些美妙的乐曲。软件设计的 最初理念是简单方便、易操作,因此它的体积比较小,所占的空间资源也很少,上手速 度快。这款软件只能使用了主键盘区的26个英文字母,即A、B—Y、Z这三行英文字母。 也许有人会说它像一款打字游戏,让没有音乐基础的人很快上手,但却让一些有音乐基 础的人感到不适。其实每一人在使用过这个软件后,都有不同的评价与看法。 那么,这款软件的定位是通过简单的操作指法达到一种休闲娱乐的好方式,让人们 不会因为时间、空间的限制,就可以弹出有节奏的好声音。它去除了专业音乐软件操作 的复杂性,简单的操作可以使在这个快节奏的生活的人们释放压力。因为其简单和易操 作的特性,所以服务的人群也是相当广泛的,能够接受使用它的人也会很大。 关键词:编程语言 简单方便 休闲娱乐 易操作 一、键盘钢琴开发环境 1.1软件设计背景 C#是微软公司发布的一种面向对象的、运行于之上的高级程序设计语言,它包括了 [1]诸如单一继承、接口和编译成中间代码再运行的过程。(百度百科)一门强大的语言 可以给我们在设计方面带来许多意想不到的功能,不管是对开发者的思维还是对于创作 者的兴趣都是一种引领,引领着开发者中不断的去克服苦难,挑战自己,给人们的他日 常生活带来无数新奇的东西,创造一些很好用的软件出来回馈给大众。 Visual Studio给用户提供了丰富的开发环境,包含页面设计、自动错误检查、调 试工具等特征。在之后不断更新的新版本中加入了非常多的新特征,大大地提高了程序 开发的自由度,例如以var为关键字,还有对象初始化器,这些新的特征给这个软件注 入了新鲜的血液。这样的好处在于页面设计的时候可以省去许多代码书写的麻烦,同时 节约了设计者不少的时间,不得不说的就是常见错误出现问题大大减少。“高效快速是 这门语言带给我们最直观的感受,”在网上很多人这样去评论它。 1.2软件设计意义 在选择C#这门语言来开发这个软件时,我会问自己,为什么选择这门编程语言来设 计开发键盘钢琴软件, C#语言是微软公司研发出来的,是专门服务于windows操作系统上程序代码书写的编程软件;而Windows平台在台式电脑抑或是笔记本领域中占有主导地位~使用该平台的用户之广~也成为许多程序爱好者选择的原因。 那么再来说说为什么我会设计一个键盘钢琴软件这样一个类似打字游戏的软件作为我的毕业论文~其实理由很简单~因为我热爱c#这门语言~也对一些小游戏比较感兴趣~于是就选择了键盘钢琴这样一个既可以作为小游戏~也可以作为学习工具的这样一个程序。像这样类型的软件现在早在互联网上就相当的火热~在各大网站的下载量也是非常的高。足以说明选择它是非常有意义~而且也非常值得。我也希望自己制作的软件能够被大家去接受去使用~这将是一件非常开心和愉快的事。 二、需求分析 2.1市场情况 通过查阅相关的书籍和文献~了解到在近几年来~在国内乐器展会上出现这样一种趋势:实物钢琴的市场逐渐缩小~商家的数量逐渐在下降。 相比之下~电声乐器的市场却在逐渐扩大~比如说像电吉它~电钢琴等这些新的乐器门类形成迅速发展的态势。在这种大的转型期间~键盘钢琴这样的电子产品蕴含着非常大的潜力~也许会带来改变人们生活方式的发展。 键盘类乐器产品市场容量大小及其发展趋势一直都备受大家的关注~市场容量一般用键盘类乐器产品的市场需求量在不断的增加~市场占有率增速明显。,键盘类乐器市场调查1-2键盘类乐器产品市场容量分析,对其原因分析~是因为现代科技日新月异的发展而引起乐器行业发展变化的结果~科技改变着人们的看法~也深刻的改变着人们对音乐的认识。这门技术也将迎来不断的发展与完善~从而不时地出现在人们的视线里~让人们愿意去使用它。 2.2应用情况 我在网站上搜集了相关数据~查看了相关的资料~据权威数据发表网站统计:目前同类型的电子音乐产品,如:简单版、falsh版、专业版,在各大网站下载排行榜上的下载量突破了100万次+~这样惊人的下载量也激发了许多学生对音乐软件的喜爱~激发了他们对软件的设计与开发。它让我们看到这种类型软件的巨大发展潜力~这些软件也让我们的生活变得多彩而美丽。 来自其他方面的信息显示~在日常生活方面~键盘钢琴,Keyboard Piano,改变了广大音乐迷的生活~使他们的生活变得更加精彩~使他们随时随地都可以练习钢琴,在教育行业也有不错的发展前景~用电子产品取代实物钢琴~成为现代化的电子教材,在休闲娱乐方面也是一个不错的选择~美妙的琴声可以给现在的人们舒缓心情~减少工作生活带来的压力。 三、程序功能设计 3.1软件介绍 键盘钢琴的音符是以ZXCVBNM ASDFGHJKL QWERTYUIOP为编排,这里总共有三排按键,摆放手的姿势完全符合我们平时打字的习惯。每一个字母对应一个按键,每一个按键发一种固定的声音。当用手指点击键盘上的一个按键时,按键图标将发生改变,并发出相应的声音,从而输出我们想要的音乐。 这款软件是以简单为中心思想设计而成的,就来介绍一下这款软件:主界面背景为深色调~突出钢琴的深层和凝重,钢琴的按键界面和电脑键盘界面位臵保持一致~方便用户使用,并且设臵有歌曲选择栏~可以随意选择喜欢的歌曲,还设臵有歌词显示栏~可以看到选择歌曲的歌词。 制作完成的软件图形界面如下: 软件整体设计风格简约~非常的人性化~给人带来一种很好的体验效果。有时候当我们觉得生活单调乏味的时候~就可以使用键盘钢琴来驱散孤单无聊~释放自己的不好的情绪~换来好的心情去迎接下一步任务。 3.2应用环境 操作系统:Windows XP、Windows 7、Windows 8也支持微软之前一些其他的系统 应用软件: Microsoft Visual Studio 2010、PhotoshopCS5 处理器:至少800MHx的处理器,而1GHz以上的处理器效果更好 RAM: 至少150MB,推荐200MB或者更高 硬盘:至少有800MB的可用空间 显示器:至少是800*600最低分辨率,可以是1024*768较高的分辨率或者更高 3.3设计原理 键盘钢琴通常可以分为4到5个八度,在遇到更高或更低的音时,我们便无法直观地听到了。钢琴键盘没有实体钢琴那样严格地区分上行和下行音列,可以非常直观地看到乐音体系中所使用的音列。那么首先来说一下7个基本音级,我们平时所熟悉的哆、唻、眯、发、嗦、啦、西分别对应不同的字母,不同的字母又对应不同的音调。比如低音区域 :1-A 2-B 3-C 4-D 5-E 6-F 7-G,中音区域 : 1-H 2-I 3-J 4-K 5-L 6-M 7-N,高音区域 :1-O 2-P 3-Q 4-R 5-S 6-T 7-U,更高音区域 :1-V 2-W 3-X 4-Y 5-Z。 在钢琴上任意两个相邻的音均为半音关系~而且这些半音都是相等的,任意两个相隔一个键的音均为全音关系~这样就造就了声音的高低起伏和婉转曲折。高低起伏才能弹出一些美妙动听的曲子出来~半音与全音使乐音的内容更加的充实~且富有旋律~整个操作过程的曲子流畅度也大大提高~节奏性就更加的强烈。 但是需要注意的是:在使用这个软件的时候~要把输入法切换至英文状态,如果输入法是在中文状态~无法启动这个程序~造成按键的失灵~还可能有程序错误的提示~ 这个时候不要慌~把让切换到英文状态就可以了。所以正确的使用方法可以给使用者减少一些不必要的麻烦~也让我们更加轻松的使用这个软件~并在这个过程中逐渐养成一种良好的使用习惯~以后对软件的维护也是一种好的效果。 3.4程序功能模块 首先来介绍一下软件的大体框架~设计图简单地叙述了这个软件的使用步骤以及方法~在操作过程中分为四个主要步骤~中间环节的操作使用方法清晰明了~没有过多的装饰~也没有华丽的外表~它就是最原始的设计思路所设计的图。它就好像这门语言一样去除了哪些复杂以及浮夸的设计内容~以最直观的操作界面展示在人们的眼前。 具体设计流程图如下: 接着来介绍一下这个软件设计的几个环节~第一步~启动键盘钢琴这个应用程序~说明一下应用程序的后缀名是.exe格式的。第二步~进入这款软件的主界面窗口~主界面窗口基本上显示了这个软件的整体布局~整体布局包括:按键、背景、歌词显示栏~歌曲名显示栏~退出按钮等。第三步~找到歌曲名选择框~点击下拉按钮~弹出歌曲名列表~这里将展示音乐词库的歌曲~任意地选择一首歌曲~同时在它的右边将显示这首歌对应的歌词~每按下一个字母~这个字母就会消失,目的是为了同步我们敲键的进度~当我们在弹奏曲子的时候~歌词进度也在跟着走。第四步~当弹奏完一首歌曲后~继续选择歌曲选择栏~切换下一首歌曲,在曲子弹奏到一半的时候~我们可以任意的切换其他歌曲~选择喜欢的歌曲进行弹奏。 其次就是退出按钮了~点击这个按钮~就会弹出一句话:“你是否要退出~是/否”~点击是就退出这几个软件~如果点击否就继续留在这个界面~继续使用这个软件。当然还有一种最快的方式~那么就是直接点击窗口的“关闭”按钮~直接快速地关闭这个软件。那么这两种方法~你可以任选其一。 最后来说说歌曲的添加方式~第一步~找到这个文件夹~文件是以“键盘钢琴”命名的,打开它,第二步~找到以“img”命名的这个文件夹~可以看到文件的路径~比如E:\牛耳实习作业\实训制作小项目\MyMusic \img,第三步~再打开这个文件夹~那么这个文件夹里面就存放着音乐库中已经存在的曲名~这些用来存放歌词的文件是我们平时比较常见的记事本~记事本的后缀名是.txt,第四步~把搜集到的歌词需要把它复制/粘贴到记事本中~然后对记事本进行重命名~把歌曲名输入进去~如果歌词是其他格式 的~可以用“格式工厂”进行格式转换~把它转换成txt格式的文件。 四、程序详细设计 4.1 类与对象的使用 在整个程序编写过程中~大量地使用对象~在键盘钢琴代码编写过程中的对象有26个字母所对应的图片~每张图片促发对应的声音~用户促发点击事件后将更换成为对应的另一张图片~这个里面出现的图片和声音都是对象。那么简单地说明一下对象~对象就是具有相同结构和特征的每一个实体。例如给在铜仁地区的学校取名~名字是铜仁一中、铜仁二中、铜仁三中、铜仁实验中学~它们是四个不同的对象~但它们是属于同一类型的~具有相同的结构和特征。而像重庆大学、重庆科技大学、重庆医科大学、重庆政法大学这四个对象的类型也是相同的~但它们与铜仁的中学类型并不相同。所以说每个对象都属于一个具有特定的类型~有具体的属性。 在书写代码过程中~经常会使用private、public还有protected来限制类的访问权限以及它的作用域。例如私有的成员函数只能被本类的其他成员函数调用~但是不能被类外的函数调用~从某种角度上保护着数据的安全~用类给区分开来。那么类又是什么呢,类从某种角度可以说它代表了一批对象的共性和特征~类的成员有三种分别是私有的、共用的、受保护的。用c#编写代码时~需要先声明一个类的类型~然后再去定义其他若干个同类型的对象~那么这些类就是起着声明的作用。 那么类和对象有什么样的关系呢,用书面的语言说~就是:类是对象的抽象~而对象时类的具体实例,c++面向对象程序设计,。两者是互相关联的~缺一不可。当你声明了类~就意味着你要去定义一个或者多个对象。 4.2 系统程序事件 在钢琴键盘程序的编写过程中使用到几种关键的事件~这些事件组成了这个软件的核心代码以及主体框架。通过促发事件来响应此次操作~每次操作都是一次事件的响应~系统程序事件主要分为四部分。 键盘钢琴的系统结构图: 首先是Form1_KeyDown按下事件~它是实现按下字母键时进行图片的变换以及声音的加载。对代码书写过程中的思路进行阐述~第一步~遍历窗体中的所有控件~用一 个if语句来判定这个窗体是否为图片框~如果是的话就直接转化成为picturebox,第二步~按下键时找到图片对应的位臵~然后对图片进行加载。第三步~在对图片加载完成的同时也将对歌曲中的歌词加载完毕~即点击一个键~就响应一种声音~然后逐字的让这个键对应的字母在歌词栏中消失~后面的歌词前移~补充前面的位臵~这样歌词就进行同步更新。 紧接着就是Form1_KeyUp放开按键事件~它是实现松开键后图片动画的还原的效果。对代码书写过程中的思路简单的说明~跟上面的步骤一样先遍历窗体中的所有控件~对文件进行加载,当完成这段程序将声明一个对象num~它的作用是使文字前移一个单位~接着加载下一个单位的声音~执行sp.play()的操作。 然后是Form1_Load文件载入事件~它是实现对歌曲以及文本文字的加载。那对代码书写过程中的思路简单的说明一下~先加载文件夹中的文件~再使用foreach函数来去掉文件路径~只保留命名。这个过程完成后~要对两个对象fs以及sr进行是否为空的判定~当判定它们为空的时候~才能进行接下来的操作。然后创建一个文件路径~再创建文本读取器~读取器的作用是用来来读取一行文本。 最后是Run(new Form1())程序运行的主入口点。主入口点就相当于观众去体育馆去观看一场篮球比赛~当我们进入体育馆时需要门票才能进入~而这里的体育馆大门就相当于主入口点~是运行程序的入口。 五、设计方法及措施 5.1 具体步骤 完成这个作品使用到的方法总共涉及到三种方法~下面对这些方法进行说明: 第一种是操作实践结合的方法~首先熟练操作主要软件Photoshop和Microsoft Visual Studio 2010两种应用软件的基本操作方法与基本语法~利用它们绘制出游戏背景、游戏操作界面以及相关的图形元件~需要用到代码时~进行代码书写。 第二种是功能实践的方法~对各个软件的操作学习~绘制出更加完美流畅的游戏画面,制作一个小游戏集合并对各个软件的操作进行更精一步的学习 。然后对每个功能进行调试~检查在开发过程中功能是否达到设计的最初要求~对没有达到要求的功能代码进行查错或者重新编写~以达到设计要求。 第三种是结合实例分析法~因为在这门语言制作时~难免会出现有些地方不是很明白的地方~所以翻看了许多相关的游戏的制作过程与相关代码的编写方式~对实例操作 过程中出现的问题和不足进行反思。结合这些实例完善自己的作品~不断修改达到完善。 六、参考文献 [1]刘甫迎、刘光会、王蓉.C#程序设计教程(第2版).北京:电子工业出版社,2008 [2]王昊亮,李刚等.Visual C#程序设计教程.北京:清华大学出版社,2003 [3]李兰友 杨晓光.Visual C#.NET程序设计.北京:清华大学 北方交通大学出版社,2004
/
本文档为【C#课程设计游戏弹琴游戏】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索