这个小项目是我在学习C#winform的时候做的,不得不承认C#在做桌面程序程序是Java不能比的,如果有VS这样的开发工具就如虎添翼了,我这项目是用VS2015做的,用VS2010打包安装(后来的VS都不具备这个功能了)。下面说说具体这个语言计算器,这个计算机实现了键盘输入、实现了语音播报这两个比较有特色的功能,下面贴张图片:

其实键盘输入和语音播报分别设计到C#的两个概念:键盘监听事件和播放音频文件,下面主要首先为大家介绍如何实现鼠标监听,我就不废话了,直接贴项目鼠标监听的代码了,如下

C#实现鼠标监听

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)//监听键盘事件{if (keyData == Keys.D1 || keyData == Keys.NumPad1) GSH("1"); if (keyData == Keys.D2 || keyData == Keys.NumPad2) GSH("2"); if (keyData == Keys.D3 || keyData == Keys.NumPad3) GSH("3"); if (keyData == Keys.D4 || keyData == Keys.NumPad4) GSH("4");if (keyData == Keys.D5 || keyData == Keys.NumPad5) GSH("5"); if (keyData == Keys.D6 || keyData == Keys.NumPad6) GSH("6"); if (keyData == Keys.D7 || keyData == Keys.NumPad7) GSH("7"); if (keyData == Keys.D8 || keyData == Keys.NumPad8) GSH("8");if (keyData == Keys.D9 || keyData == Keys.NumPad9) GSH("9"); if (keyData == Keys.D0 || keyData == Keys.NumPad0) GSH("0"); if (keyData == Keys.A && radioButton3.Checked) GSH("A"); if (keyData == Keys.B && radioButton3.Checked) GSH("B");if (keyData == Keys.C && radioButton3.Checked) GSH("C"); if (keyData == Keys.D && radioButton3.Checked) GSH("D");if (keyData == Keys.E && radioButton3.Checked) GSH("E"); if (keyData == Keys.F && radioButton3.Checked) GSH("F");if (keyData == Keys.Space || keyData == Keys.Decimal) GSH(".");if (keyData == Keys.Enter){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_007.wav");//播放声音Voice_007.wav,下同sndPlayer.Play();}countans++;switch (fh){case '+': Move(2); break;case '-': Move(3); break;case 'x': Move(4); break;case '/': Move(5); break;}}if(keyData==Keys.Delete)//判断键盘是否输入Delete键{if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_005.wav");sndPlayer.Play();}richTextBox1.Text = GL;Data = "";Data1 = "";str1 = "\n\n";lengs = GL.Length - 2;}if(keyData==Keys.Back){string str1 = "\n\n";if (lengs <= GL.Length - 2){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_006.wav");sndPlayer.Play();}lengs++;for (int i = 0; i < lengs; i++){str1 += ' ';}if (Data.Length > 0)Data = Data.Remove(Data.Length - 1, 1);richTextBox1.Text = str1 + Data;if (Data.Length == 0){richTextBox1.Text = GL;lengs = GL.Length - 2;}}}if(keyData==Keys.Subtract || keyData==Keys.Down){if (!Data.Equals("")){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_002.wav");sndPlayer.Play();}x = double.Parse(Data);//将data转化成字符型fh = '-';Move(1);}}//减if (keyData == Keys.Multiply || keyData == Keys.Left) {if (!Data.Equals("")){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_003.wav");sndPlayer.Play();}x = double.Parse(Data);fh = 'x';Move(1);}}if (keyData == Keys.Add || keyData == Keys.Up) {if (!Data.Equals("")){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_001.wav");sndPlayer.Play();}x = double.Parse(Data);fh = '+';Move(1);}}if (keyData == Keys.Divide || keyData == Keys.Right) {if (!Data.Equals("")){if (sound == 1){System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_004.wav");sndPlayer.Play();}x = double.Parse(Data);fh = '/';Move(1);}}return true;//return base.ProcessCmdKey(ref msg, keyData); }

接下来为大家介绍如何在C#中播放音频文件,也给大家看看代码吧,相信你们一看就会,如下:

C#winform播放音频文件(点击这里查看C#播放声音详情)

 System.Media.SoundPlayer sndPlayer = newSystem.Media.SoundPlayer(Application.StartupPath + @"/Voice_004.wav");//Voice_004.wav是位于根目录下的音频文件sndPlayer.Play();

好了,这个项目就为大家介绍到这里,如需源码,如下是下载网址:

http://pan.baidu.com/s/1sl9ySix

项目实践——语音计算器相关推荐

  1. Python基础项目实践之:面向对象方法模拟简单计算器

    Python课堂基础实践系列: Python基础项目实践之:学生信息管理系统 python基础项目实践之: 学生通讯录管理系统 Python基础项目实践之:面向对象方法模拟简单计算器 Python基础 ...

  2. C# 控制台语音计算器

    记得上高中时,给人当会计,帮忙结算月度工资:用的就是带语音功能的计算器! 当时用起来倍儿爽,于是速度加倍,效率加速:结果让老板赔了不少钱! 就是因为这个,才对语音计算器有了深刻印象!可能是这货坑了我! ...

  3. Python基础项目实践之:学生信息管理系统

    Python课堂基础实践系列: Python基础项目实践之:学生信息管理系统 python基础项目实践之: 学生通讯录管理系统 Python基础项目实践之:面向对象方法模拟简单计算器 Python基础 ...

  4. python基础项目实践之: 学生通讯录管理系统

    Python课堂基础实践系列: Python基础项目实践之:学生信息管理系统 python基础项目实践之: 学生通讯录管理系统 Python基础项目实践之:面向对象方法模拟简单计算器 Python基础 ...

  5. Python基础项目实践之:面向对象方法实现模拟银行管理系统

    Python课堂基础实践系列: Python基础项目实践之:学生信息管理系统 python基础项目实践之: 学生通讯录管理系统 Python基础项目实践之:面向对象方法模拟简单计算器 Python基础 ...

  6. Kotlin高仿微信-项目实践58篇

    Kotlin高仿微信项目实践主要包含5大模块: 1.Web服务器 2.Kotlin客户端 3.Xmpp即时通讯服务器 4.视频通话服务器 5.腾讯云服务器 另外也有Flutter版本高仿微信功能,Fl ...

  7. Android-使用SoundPool实现语音计算器

    Android计算器的代码直接使用Android系统里面的Calculator.先找到Android 工程源码中的 Calculator(./package/app/Calculator).导入到Ec ...

  8. C#项目实战——Windows计算器的制作【实例】

    参考<C#从入门到项目实践>边学习,边练习实现. Windows计算器的制作 此次练习的计算器应用软件在Visual Studio 2019编程环境中开发,是一个简单的窗体应用程序,实现简 ...

  9. 【四则运算】个人项目实践

    题目要求:像<构建之法>的人物阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 "软件", 分别满足下面的各种需求. 下面这些需求都可以用命令行参数的形式来 ...

最新文章

  1. 英国首相将授权华为接入英国5G网络
  2. 【计算机网络】数据链路层 : 广域网 ( HDLC 协议 | HDLC 站 | HDLC 帧格式 | HDLC 帧类型 | PPP 协议 与 HDLC 协议 对比 )
  3. 统一认证服务CAS 5安装
  4. zcmu-1644 多连块拼图
  5. pip 安装模块报错解决
  6. 鸿蒙os2.0公测机型,鸿蒙OS2.0第二期第三期公测机型陆续公布 麒麟980和麒麟820将登场...
  7. python中if语句使用_Python学习笔记之if语句的使用示例
  8. C/C++线程与多线程工作笔记003---C++指针引用和解引用
  9. C# 窗体间传值方法大汇总(转)
  10. solr面试题_查看您的Solr缓存大小:Eclipse Memory Analyzer
  11. linux gpt分区挂载,GPT分区和挂载
  12. 码农的自我修养之从需求分析到软件设计
  13. 老王出品:一文读懂证券业第三方存管和证券托管模式
  14. 2020 中秋、国庆快乐!
  15. 用xmind做读书笔记的几个层次
  16. 帮助文档的使用和制作
  17. 华展云-让展览更高效 2017第十八届中国国际机床装备展览会会刊(参展商名录)
  18. 【SharePoint】SharePoint 文档库中html文件打开后直接通过浏览器访问,而不是直接下载
  19. 仿写小米官网 简单的HTML+CSS练习
  20. 路由器修改html加广告,openwrt利用Privoxy实现js广告植入

热门文章

  1. 国家计算机职业技能鉴定4级考试内容详解
  2. 中国都市女性抗衰洞察:Z世代抗衰意识普遍觉醒,“纹”题成抗衰重点
  3. SQL Server Arithmetic overflow error converting nvarchar to data type numeric
  4. 【毕业设计_课程设计】基于Python的南京二手房数据采集及可视化分析
  5. python实现word文档合并 v2.0
  6. Java解析Excel文档,2003和2007版本不兼容问题
  7. .NET iTextSharp PDF添加文字水印
  8. 曾国藩:一勤天下无难事
  9. 马克思主义基本原理笔记(黄色标记要求会背)
  10. Win7重装系统遇到错误怎么办?