月光宝盒模拟钢琴程序设计说明_第1页
月光宝盒模拟钢琴程序设计说明_第2页
月光宝盒模拟钢琴程序设计说明_第3页
月光宝盒模拟钢琴程序设计说明_第4页
月光宝盒模拟钢琴程序设计说明_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《月光宝盒》模拟钢琴程序设计具体说明程序概要本程序利用VBVB中大量的控件来API函数,主要是实现模拟钢琴的发音。此外,还留意了界面的动画效果。程序系统的构造系统构造由两局部组成第一局部:欢送界面frmlogin其次局部:主窗体frmmain此外,主窗体下有多种背景可供选择,以下举例说明控件介绍frmlogin欢送界面中主要用到了标签还有定时器,来实现标签的移动和字体变化并且播放致爱丽丝用到mrciosoftmultimediacontrol6.0(sp3)这个控件.在此没有用通用对话框或者文件读取的方法,是由于怕外机上没有钢琴曲之类的轻音乐.但回头观看以下,容量大了.主窗体frmmain中,.右下角为图片按钮.有三个定时器.功能介绍琴键用鼠标或键盘均可实现弹奏.键盘上面的三个命令按钮,自左至右功能依次为,“转变窗体外形”“窗体最前端显示”和“视窗体控件透亮化(该过程不行逆,点击‘返回初始状态’按钮可根本恢复)”.窗体右侧的按钮“音调调整”.“音乐赏识”可在里面选择自己想听的歌曲.“换肤”可更改背景图片.“换色”可更改背景颜色.恢复原是背景可点击“返回初始化”按钮,由于时“帮助”按钮未写代码.下面图片按钮可推出程序.程序漏洞“月光宝盒”主窗体不行最小化,且假设播放一首音乐,虽然可同时弹奏钢琴,但是当让音乐停顿后则钢琴不行用.除此之外当按下琴键上面第三个按钮的时候窗体透亮,(并使用第一个按钮)窗体不行恢复.“月光宝盒2”中有最小化按钮但是(最好不用),没有写控件随窗体变化而变化的代码.播放一段音乐时,钢琴可用但是音乐将停顿,当没有触发钢琴大事的时,音乐又起.钢琴大事:PrivateSubForm_LoadnumDevices=midiOutGetNumDevsrc=midiOutClose(hmidi)rc=midiOutOpen(hmidi,curDevice,0,0,0)channel=0baseNote=60volume=127PrivateSubForm_KeyUp(KeyCodeAsInteger,ShiftAsInteger)StopNoteNoteFromKey(KeyCode) ‘初始化键盘PrivateFunctionNoteFromKey(keyAsInteger)NoteFromKey=INVALID_NOTESelectCasekeyCasevbKeyZNoteFromKey=0CasevbKeySNoteFromKey=1CasevbKeyXNoteFromKey=2CasevbKeyDNoteFromKey=3CasevbKeyCNoteFromKey=4CasevbKeyVNoteFromKey=5CasevbKeyGNoteFromKey=6CasevbKeyBNoteFromKey=7CasevbKeyHNoteFromKey=8CasevbKeyNNoteFromKey=9CasevbKeyJNoteFromKey=10CasevbKeyMNoteFromKey=11Case188”commaNoteFromKey=12CasevbKeyLNoteFromKey=13Case190”periodNoteFromKey=14Case186”semicolonNoteFromKey=15”forwardslashNoteFromKey=16EndSelectEndsubPrivateSubStopNote(IndexAsInteger)If(Index=INVALID_NOTE)ThenEndIfkey(Index).Value=0midimsg=&H80+((baseNote+Index)*&H100)”+channelmidiOutShortMsghmidi,midimsgEndSub承受鼠标或键盘大事在此来承受键盘大事PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)StartNoteNoteFromKey(KeyCode) “调用NoteFromKey(KeyCode)PrivateFunctionNoteFromKey(keyAsInteger)NoteFromKey=INVALID_NOTESelectCasekeyCasevbKeyANoteFromKey=0CasevbKeySNoteFromKey=1CasevbKeyDNoteFromKey=2CasevbKeyFNoteFromKey=3CasevbKeyGNoteFromKey=4CasevbKeyHNoteFromKey=5CasevbKeyJNoteFromKey=6CasevbKeyKNoteFromKey=7CasevbKeyLNoteFromKey=8Case186NoteFromKey=9CasevbKeyWNoteFromKey=10CasevbKeyENoteFromKey=11CasevbKeyRNoteFromKey=12CasevbKeyUNoteFromKey=13CasevbKeyINoteFromKey=14CasevbKeyONoteFromKey=15CasevbKeyPNoteFromKey=16EndSelectEndFunction感想我现在的感觉是有些书到用时方很少.在做这个程序的时候有很多学问都还不懂,在此期间舍友华春香给我了很大帮助.经受了这几天的奋战,说实在的我真的学到了很多很多东西虽然或许不能够全部的运用到自己的程序里,但是我感到真的是受益匪浅有压力就有动力吧,我想.譬如,就说最终这一天吧,快要交,偏偏这时候

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论