C#-键盘钢琴源代码

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C#键盘钢琴源代码开发平台:VS2008windows窗体程序功能设计:当窗体获得焦点时,按下键盘可发出声音,一个字母对应一个声音,音高从A到Z由低到高排列,同时对应26个button,也可用鼠标单击,功能比较简单但很实用。Form1.cs[设计]:新建一个Sound类,用于播放音乐(注:貌似VS2008只支持.wav格式的音乐文件)Class1.cs:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingMicrosoft.DirectX.DirectSound;//注,需下载DirectX插件namespaceKeyboardPiano{publicclassSound:IDisposable{privateSecondaryBuffermSecondaryBuffer=null;//privateboolmDisposed=false;publicSound(stringfilePath,Form1fm){BufferDescriptiondesc=newBufferDescription();desc.StaticBuffer=true;Deviced=newDevice();d.SetCooperativeLevel(fm,CooperativeLevel.Normal);mSecondaryBuffer=newSecondaryBuffer(filePath,desc,d);}publicvoidPlay(){mSecondaryBuffer.Play(0,BufferPlayFlags.Default);}#regionIDisposable成员publicvoidDispose(){mSecondaryBuffer.Dispose();mSecondaryBuffer=null;}#endregion}}Form1.cs:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Media;usingSystem.Threading;usingSystem.IO;namespaceKeyboardPiano{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls=false;}//按钮事件privatevoidbutton1_Click(objectsender,EventArgse){Sounda=newSound(@C:\DocumentsandSettings\桌面\wav\c-1.wav,this);a.Play();}//……省略中间的按钮privatevoidbutton26_Click(objectsender,EventArgse){Soundz=newSound(@C:\DocumentsandSettings\桌面\wav\d3.wav,this);z.Play();}//键盘事件privatevoidForm1_KeyDown(objectsender,KeyEventArgse){switch(e.KeyData){caseKeys.A:button20_Click(sender,e);break;//……其他键省略caseKeys.Z:button26_Click(sender,e);break;}}}}

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功