从Windows中选择声音并播放它们
我有一个WinForms应用程序。 此应用程序有一个“首选项”部分,用户可以在显示警报时选择播放哪些声音。
是否有可能有一个combobox,用户可以从Windows存储的声音中选择,如“关键停止”,“关键哔”等。 这些可在“控制面板”>>“声音和警报”部分找到。
是否也可以有一个播放按钮来测试声音?
试试这个:
private void Form1_Load(object sender, EventArgs e) { var systemSounds = new[] { System.Media.SystemSounds.Asterisk, System.Media.SystemSounds.Beep, System.Media.SystemSounds.Exclamation, System.Media.SystemSounds.Hand, System.Media.SystemSounds.Question }; comboBox1.DataSource = systemSounds; comboBox1.SelectedIndexChanged += new EventHandler(comboBox1_SelectedIndexChanged); } void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { ((System.Media.SystemSound)comboBox1.SelectedItem).Play(); }
您不需要任何API来播放系统声音,只需编写如下代码:
// Plays the sound associated with the Asterisk system event. System.Media.SystemSounds.Asterisk.Play();
SystemSounds
类包含以下预定义的系统声音:
所有其他声音都要求您从注册表中读取所需的声音并使用以下代码播放:
SoundPlayer simpleSound = new SoundPlayer(@"c:PathToYourWaveFile.wav");
当然! 您正在寻找的所有声音都可以通过System.Media.SystemSounds
类获得 ,它们作为公共属性公开,对应于触发声音的事件类型。
此外, SystemSound
类的对象提供了一种Play
方法 ,您可以调用该方法异步播放该声音。
例如,要播放“关键停止”声音,您只需编写以下代码:
上述就是C#学习教程:从Windows中选择声音并播放它们分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
System.Media.SystemSounds.Hand.Play();
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/958430.html